diff --git a/metric-metadata/ackextension.yaml b/metric-metadata/ackextension.yaml index dea5520..3b369fb 100644 --- a/metric-metadata/ackextension.yaml +++ b/metric-metadata/ackextension.yaml @@ -1,5 +1,10 @@ +display_name: ACK Extension type: ack +description: | + This extension allows acking of data upon successful processing. The upstream agent can choose to send event again + if ack fails. + status: class: extension stability: diff --git a/metric-metadata/activedirectorydsreceiver.yaml b/metric-metadata/activedirectorydsreceiver.yaml index 90a5312..e0fa801 100644 --- a/metric-metadata/activedirectorydsreceiver.yaml +++ b/metric-metadata/activedirectorydsreceiver.yaml @@ -1,5 +1,10 @@ +display_name: Active Directory Domain Services Receiver type: active_directory_ds +description: | + The Active Directory Domain Services Receiver scrapes metrics relating to an Active Directory domain controller using + the Windows Performance Counters. + status: class: receiver stability: @@ -11,6 +16,13 @@ status: unsupported_platforms: [darwin, linux] attributes: + bind_type: + name_override: type + description: The type of bind to the domain server. + type: string + enum: + - server + - client direction: description: The direction of data flow. type: string @@ -24,13 +36,6 @@ attributes: enum: - compressed - uncompressed - value_type: - name_override: type - description: The type of value sent. - type: string - enum: - - distinguished_names - - other operation_type: name_override: type description: The type of operation. @@ -54,75 +59,74 @@ attributes: - success - schema_mismatch - other - bind_type: + value_type: name_override: type - description: The type of bind to the domain server. + description: The type of value sent. type: string enum: - - server - - client + - distinguished_names + - other metrics: - active_directory.ds.replication.network.io: - description: "The amount of network data transmitted by the Directory Replication Agent." - unit: By - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [direction, network_data_type] - enabled: true - active_directory.ds.replication.sync.object.pending: - description: "The number of objects remaining until the full sync completes for the Directory Replication Agent." - unit: "{objects}" + active_directory.ds.bind.rate: + description: "The number of binds per second serviced by this domain controller." + unit: "{binds}/s" sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double + attributes: [bind_type] enabled: true - active_directory.ds.replication.sync.request.count: - description: "The number of sync requests made by the Directory Replication Agent." - unit: "{requests}" - sum: - monotonic: true - aggregation_temporality: cumulative + stability: development + active_directory.ds.ldap.bind.last_successful.time: + description: "The amount of time taken for the last successful LDAP bind." + unit: "ms" + gauge: value_type: int - attributes: [sync_result] enabled: true - active_directory.ds.replication.object.rate: - description: "The number of objects transmitted by the Directory Replication Agent per second." - unit: "{objects}/s" + stability: development + active_directory.ds.ldap.bind.rate: + description: "The number of successful LDAP binds per second." + unit: "{binds}/s" sum: monotonic: false aggregation_temporality: cumulative value_type: double - attributes: [direction] enabled: true - active_directory.ds.replication.property.rate: - description: "The number of properties transmitted by the Directory Replication Agent per second." - unit: "{properties}/s" + stability: development + active_directory.ds.ldap.client.session.count: + description: "The number of connected LDAP client sessions." + unit: "{sessions}" sum: monotonic: false aggregation_temporality: cumulative - value_type: double - attributes: [direction] + value_type: int enabled: true - active_directory.ds.replication.value.rate: - description: "The number of values transmitted by the Directory Replication Agent per second." - unit: "{values}/s" + stability: development + active_directory.ds.ldap.search.rate: + description: "The number of LDAP searches per second." + unit: "{searches}/s" sum: monotonic: false aggregation_temporality: cumulative value_type: double - attributes: [direction, value_type] enabled: true - active_directory.ds.replication.operation.pending: - description: "The number of pending replication operations for the Directory Replication Agent." - unit: "{operations}" + stability: development + active_directory.ds.name_cache.hit_rate: + description: "The percentage of directory object name component lookups that are satisfied by the Directory System Agent's name cache." + unit: "%" + gauge: + value_type: double + enabled: true + stability: development + active_directory.ds.notification.queued: + description: "The number of pending update notifications that have been queued to push to clients." + unit: "{notifications}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true + stability: development active_directory.ds.operation.rate: description: "The number of operations performed per second." unit: "{operations}/s" @@ -132,84 +136,103 @@ metrics: value_type: double attributes: [operation_type] enabled: true - active_directory.ds.name_cache.hit_rate: - description: "The percentage of directory object name component lookups that are satisfied by the Directory System Agent's name cache." - unit: "%" - gauge: - value_type: double + stability: development + active_directory.ds.replication.network.io: + description: "The amount of network data transmitted by the Directory Replication Agent." + unit: By + sum: + monotonic: true + aggregation_temporality: cumulative + value_type: int + attributes: [direction, network_data_type] enabled: true - active_directory.ds.notification.queued: - description: "The number of pending update notifications that have been queued to push to clients." - unit: "{notifications}" + stability: development + active_directory.ds.replication.object.rate: + description: "The number of objects transmitted by the Directory Replication Agent per second." + unit: "{objects}/s" sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double + attributes: [direction] enabled: true - active_directory.ds.security_descriptor_propagations_event.queued: - description: "The number of security descriptor propagation events that are queued for processing." - unit: "{events}" + stability: development + active_directory.ds.replication.operation.pending: + description: "The number of pending replication operations for the Directory Replication Agent." + unit: "{operations}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - active_directory.ds.suboperation.rate: - description: "The rate of sub-operations performed." - unit: "{suboperations}/s" + stability: development + active_directory.ds.replication.property.rate: + description: "The number of properties transmitted by the Directory Replication Agent per second." + unit: "{properties}/s" sum: monotonic: false aggregation_temporality: cumulative value_type: double - attributes: [suboperation_type] + attributes: [direction] enabled: true - active_directory.ds.bind.rate: - description: "The number of binds per second serviced by this domain controller." - unit: "{binds}/s" + stability: development + active_directory.ds.replication.sync.object.pending: + description: "The number of objects remaining until the full sync completes for the Directory Replication Agent." + unit: "{objects}" sum: monotonic: false aggregation_temporality: cumulative - value_type: double - attributes: [bind_type] + value_type: int enabled: true - active_directory.ds.thread.count: - description: "The number of threads in use by the directory service." - unit: "{threads}" + stability: development + active_directory.ds.replication.sync.request.count: + description: "The number of sync requests made by the Directory Replication Agent." + unit: "{requests}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int + attributes: [sync_result] enabled: true - active_directory.ds.ldap.client.session.count: - description: "The number of connected LDAP client sessions." - unit: "{sessions}" + stability: development + active_directory.ds.replication.value.rate: + description: "The number of values transmitted by the Directory Replication Agent per second." + unit: "{values}/s" sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double + attributes: [direction, value_type] enabled: true - active_directory.ds.ldap.bind.last_successful.time: - description: "The amount of time taken for the last successful LDAP bind." - unit: "ms" - gauge: + stability: development + active_directory.ds.security_descriptor_propagations_event.queued: + description: "The number of security descriptor propagation events that are queued for processing." + unit: "{events}" + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int enabled: true - active_directory.ds.ldap.bind.rate: - description: "The number of successful LDAP binds per second." - unit: "{binds}/s" + stability: development + active_directory.ds.suboperation.rate: + description: "The rate of sub-operations performed." + unit: "{suboperations}/s" sum: monotonic: false aggregation_temporality: cumulative value_type: double + attributes: [suboperation_type] enabled: true - active_directory.ds.ldap.search.rate: - description: "The number of LDAP searches per second." - unit: "{searches}/s" + stability: development + active_directory.ds.thread.count: + description: "The number of threads in use by the directory service." + unit: "{threads}" sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: true + stability: development # TODO: Update the receiver to pass the tests tests: diff --git a/metric-metadata/aerospikereceiver.yaml b/metric-metadata/aerospikereceiver.yaml index e9381a5..f04bea9 100644 --- a/metric-metadata/aerospikereceiver.yaml +++ b/metric-metadata/aerospikereceiver.yaml @@ -1,5 +1,9 @@ +display_name: Aerospike Receiver type: aerospike +description: | + The Aerospike receiver is designed to collect performance metrics from one or more Aerospike nodes. + status: class: receiver stability: @@ -18,16 +22,39 @@ tests: - "sync.runtime_Semacquire" resource_attributes: - aerospike.node.name: - description: Name of the Aerospike node collected from - enabled: true - type: string aerospike.namespace: description: Name of the Aerospike namespace enabled: true type: string + aerospike.node.name: + description: Name of the Aerospike node collected from + enabled: true + type: string attributes: + connection_op: + name_override: operation + description: Operation performed with a connection (open or close) + type: string + enum: + - close + - open + + connection_type: + name_override: type + description: Type of connection to an Aerospike node + type: string + enum: + - client + - fabric + - heartbeat + index_type: + name_override: index + description: Type of index the operation was performed on + type: string + enum: + - primary + - secondary namespace_component: name_override: component description: Individual component of a namespace @@ -37,30 +64,15 @@ attributes: - index - set_index - secondary_index - scan_type: - name_override: type - description: Type of scan operation performed on a namespace - type: string - enum: - - aggregation - - basic - - ops_background - - udf_background - scan_result: + query_result: name_override: result - description: Result of a scan operation performed on a namespace + description: Result of a query operation performed on a namespace type: string enum: - abort - complete - error - index_type: - name_override: index - description: Type of index the operation was performed on - type: string - enum: - - primary - - secondary + - timeout # short_basic queries only query_type: name_override: type description: Type of query operation performed on a namespace @@ -73,24 +85,23 @@ attributes: - short_basic - ops_background - udf_background - query_result: + scan_result: name_override: result - description: Result of a query operation performed on a namespace + description: Result of a scan operation performed on a namespace type: string enum: - abort - complete - error - - timeout # short_basic queries only - transaction_type: + scan_type: name_override: type - description: Type of transaction performed on a namespace + description: Type of scan operation performed on a namespace type: string enum: - - delete - - read - - udf - - write + - aggregation + - basic + - ops_background + - udf_background transaction_result: name_override: result description: Result of a transaction performed on a namespace @@ -101,104 +112,95 @@ attributes: - not_found - success - timeout - connection_type: + transaction_type: name_override: type - description: Type of connection to an Aerospike node - type: string - enum: - - client - - fabric - - heartbeat - connection_op: - name_override: operation - description: Operation performed with a connection (open or close) + description: Type of transaction performed on a namespace type: string enum: - - close - - open + - delete + - read + - udf + - write metrics: - aerospike.node.memory.free: + aerospike.namespace.disk.available: enabled: true - description: Percentage of the node's memory which is still free - extended_documentation: Aerospike Metric system_free_mem_pct - unit: '%' + description: Minimum percentage of contiguous disk space free to the namespace across all devices + stability: development + unit: "%" gauge: value_type: int input_type: string - aerospike.node.connection.count: + aerospike.namespace.geojson.region_query_cells: enabled: true - description: Number of connections opened and closed to the node - extended_documentation: Aggregate of Aerospike Metrics client_connections_closed, client_connections_opened, fabric_connections_closed, fabric_connections_opened, heartbeat_connections_closed, heartbeat_connections_opened - unit: '{connections}' - attributes: [connection_type, connection_op] + description: Number of cell coverings for query region queried + stability: development + unit: "{cells}" + extended_documentation: Number of cell coverings for query region queried. Aerospike metric geo_region_query_cells. sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.node.connection.open: + aerospike.namespace.geojson.region_query_false_positive: enabled: true - description: Current number of open connections to the node - extended_documentation: Aggregate of Aerospike Metrics client_connections, fabric_connections, heartbeat_connections - unit: '{connections}' - attributes: [connection_type] + description: Number of points outside the region. + stability: development + unit: "{points}" + extended_documentation: Total query result points is geo_region_query_points + geo_region_query_falsepos. Aerospike metric geo_region_query_falsepos. sum: value_type: int input_type: string - monotonic: false + monotonic: true aggregation_temporality: cumulative - aerospike.node.query.tracked: + aerospike.namespace.geojson.region_query_points: enabled: true - description: Number of queries tracked by the system. - extended_documentation: Number of queries which ran more than query untracked_time (default 1 sec), Aerospike metric query_tracked - unit: '{queries}' + description: Number of points within the region. + stability: development + unit: "{points}" + extended_documentation: Total query result points is geo_region_query_points + geo_region_query_falsepos. Aerospike metric geo_region_query_points. sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.namespace.memory.usage: + aerospike.namespace.geojson.region_query_requests: enabled: true - description: Memory currently used by each component of the namespace - extended_documentation: Aggregate of Aerospike Metrics memory_used_data_bytes, memory_used_index_bytes, memory_used_set_index_bytes, memory_used_sindex_bytes - unit: By - attributes: [namespace_component] + description: Number of geojson queries on the system since the uptime of the node. + stability: development + unit: "{queries}" + extended_documentation: Number of geojson queries on the system since the uptime of the node. Aerospike metric geo_region_query_reqs. sum: value_type: int input_type: string - monotonic: false + monotonic: true aggregation_temporality: cumulative aerospike.namespace.memory.free: enabled: true description: Percentage of the namespace's memory which is still free + stability: development extended_documentation: Aerospike metric memory_free_pct - unit: '%' + unit: "%" gauge: value_type: int input_type: string - aerospike.namespace.disk.available: - enabled: true - description: Minimum percentage of contiguous disk space free to the namespace across all devices - unit: '%' - gauge: - value_type: int - input_type: string - aerospike.namespace.scan.count: + aerospike.namespace.memory.usage: enabled: true - description: Number of scan operations performed on the namespace - unit: '{scans}' - extended_documentation: Aggregate of Aerospike Metrics scan_aggr_abort, scan_aggr_complete, scan_aggr_error, scan_basic_abort, scan_basic_complete, scan_basic_error, scan_ops_bg_abort, scan_ops_bg_complete, scan_ops_bg_error, scan_udf_bg_abort, scan_udf_bg_complete, scan_udf_bg_error - attributes: [scan_type, scan_result] + description: Memory currently used by each component of the namespace + stability: development + extended_documentation: Aggregate of Aerospike Metrics memory_used_data_bytes, memory_used_index_bytes, memory_used_set_index_bytes, memory_used_sindex_bytes + unit: By + attributes: [namespace_component] sum: value_type: int input_type: string - monotonic: true + monotonic: false aggregation_temporality: cumulative aerospike.namespace.query.count: enabled: true description: Number of query operations performed on the namespace - unit: '{queries}' + stability: development + unit: "{queries}" extended_documentation: Aggregate of Aerospike Metrics query_aggr_abort, query_aggr_complete, query_aggr_error, query_basic_abort, query_basic_complete, query_basic_error, query_ops_bg_abort, query_ops_bg_complete, query_ops_bg_error, query_udf_bg_abort, query_udf_bg_complete, query_udf_bg_error, pi_query_aggr_abort, pi_query_aggr_complete, pi_query_aggr_error, pi_query_long_basic_abort, pi_query_long_basic_complete, pi_query_long_basic_error, pi_query_ops_bg_abort, pi_query_ops_bg_basic_complete, pi_query_ops_bg_basic_error, pi_query_short_basic_timeout, pi_query_short_basic_complete, pi_query_short_basic_error, pi_query_udf_bg_abort, pi_query_udf_bg_complete, pi_query_udf_bg_error, si_query_aggr_abort, si_query_aggr_complete, si_query_aggr_error, si_query_long_basic_abort, si_query_long_basic_complete, si_query_long_basic_error, si_query_ops_bg_abort, si_query_ops_bg_basic_complete, si_query_ops_bg_basic_error, si_query_short_basic_timeout, si_query_short_basic_complete, si_query_short_basic_error, si_query_udf_bg_abort, si_query_udf_bg_complete, si_query_udf_bg_error attributes: [query_type, index_type, query_result] sum: @@ -206,52 +208,69 @@ metrics: input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.namespace.geojson.region_query_cells: + aerospike.namespace.scan.count: enabled: true - description: Number of cell coverings for query region queried - unit: '{cells}' - extended_documentation: Number of cell coverings for query region queried. Aerospike metric geo_region_query_cells. + description: Number of scan operations performed on the namespace + stability: development + unit: "{scans}" + extended_documentation: Aggregate of Aerospike Metrics scan_aggr_abort, scan_aggr_complete, scan_aggr_error, scan_basic_abort, scan_basic_complete, scan_basic_error, scan_ops_bg_abort, scan_ops_bg_complete, scan_ops_bg_error, scan_udf_bg_abort, scan_udf_bg_complete, scan_udf_bg_error + attributes: [scan_type, scan_result] sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.namespace.geojson.region_query_false_positive: + aerospike.namespace.transaction.count: enabled: true - description: Number of points outside the region. - unit: '{points}' - extended_documentation: Total query result points is geo_region_query_points + geo_region_query_falsepos. Aerospike metric geo_region_query_falsepos. + description: Number of transactions performed on the namespace + stability: development + unit: "{transactions}" + extended_documentation: Aggregate of Aerospike Metrics client_delete_error, client_delete_filtered_out, client_delete_not_found, client_delete_success, client_delete_timeout, client_read_error, client_read_filtered_out, client_read_not_found, client_read_success, client_read_timeout, client_udf_error, client_udf_filtered_out, client_udf_not_found, client_udf_success, client_udf_timeout, client_write_error, client_write_filtered_out, client_write_not_found, client_write_success, client_write_timeout + attributes: [transaction_type, transaction_result] sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.namespace.geojson.region_query_points: + aerospike.node.connection.count: enabled: true - description: Number of points within the region. - unit: '{points}' - extended_documentation: Total query result points is geo_region_query_points + geo_region_query_falsepos. Aerospike metric geo_region_query_points. + description: Number of connections opened and closed to the node + stability: development + extended_documentation: Aggregate of Aerospike Metrics client_connections_closed, client_connections_opened, fabric_connections_closed, fabric_connections_opened, heartbeat_connections_closed, heartbeat_connections_opened + unit: "{connections}" + attributes: [connection_type, connection_op] sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - aerospike.namespace.geojson.region_query_requests: + aerospike.node.connection.open: enabled: true - description: Number of geojson queries on the system since the uptime of the node. - unit: '{queries}' - extended_documentation: Number of geojson queries on the system since the uptime of the node. Aerospike metric geo_region_query_reqs. + description: Current number of open connections to the node + stability: development + extended_documentation: Aggregate of Aerospike Metrics client_connections, fabric_connections, heartbeat_connections + unit: "{connections}" + attributes: [connection_type] sum: value_type: int input_type: string - monotonic: true + monotonic: false aggregation_temporality: cumulative - aerospike.namespace.transaction.count: + aerospike.node.memory.free: enabled: true - description: Number of transactions performed on the namespace - unit: '{transactions}' - extended_documentation: Aggregate of Aerospike Metrics client_delete_error, client_delete_filtered_out, client_delete_not_found, client_delete_success, client_delete_timeout, client_read_error, client_read_filtered_out, client_read_not_found, client_read_success, client_read_timeout, client_udf_error, client_udf_filtered_out, client_udf_not_found, client_udf_success, client_udf_timeout, client_write_error, client_write_filtered_out, client_write_not_found, client_write_success, client_write_timeout - attributes: [transaction_type, transaction_result] + description: Percentage of the node's memory which is still free + stability: development + extended_documentation: Aerospike Metric system_free_mem_pct + unit: "%" + gauge: + value_type: int + input_type: string + aerospike.node.query.tracked: + enabled: true + description: Number of queries tracked by the system. + stability: development + extended_documentation: Number of queries which ran more than query untracked_time (default 1 sec), Aerospike metric query_tracked + unit: "{queries}" sum: value_type: int input_type: string diff --git a/metric-metadata/akamai.yaml b/metric-metadata/akamai.yaml new file mode 100644 index 0000000..6f9db88 --- /dev/null +++ b/metric-metadata/akamai.yaml @@ -0,0 +1,50 @@ +type: akamaidetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [Aneurysm9, dashpole, paulojmdias] + +resource_attributes: + cloud.account.id: + description: The cloud account id + type: string + enabled: true + cloud.platform: + description: The cloud platform + enabled: true + type: string + cloud.provider: + description: The cloud provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.image.id: + description: The host image id + type: string + enabled: true + host.image.name: + description: The host image name + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + host.type: + description: The host instance type + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/aks.yaml b/metric-metadata/aks.yaml index c5c1af7..a09afdb 100644 --- a/metric-metadata/aks.yaml +++ b/metric-metadata/aks.yaml @@ -3,14 +3,14 @@ type: resourcedetectionprocessor/aks parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true cloud.platform: description: The cloud.platform type: string enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true k8s.cluster.name: description: The k8s.cluster.name parsed from the Azure Instance Metadata Service's infrastructure resource group field type: string diff --git a/metric-metadata/alertmanagerexporter.yaml b/metric-metadata/alertmanagerexporter.yaml index 344808e..eab8dd2 100644 --- a/metric-metadata/alertmanagerexporter.yaml +++ b/metric-metadata/alertmanagerexporter.yaml @@ -1,4 +1,5 @@ type: alertmanager +display_name: Alertmanager Exporter status: class: exporter diff --git a/metric-metadata/alibabacloudlogserviceexporter.yaml b/metric-metadata/alibabacloudlogserviceexporter.yaml index de159cd..2e7dec0 100644 --- a/metric-metadata/alibabacloudlogserviceexporter.yaml +++ b/metric-metadata/alibabacloudlogserviceexporter.yaml @@ -1,9 +1,10 @@ type: alibabacloud_logservice +display_name: AlibabaCloud LogService Exporter status: class: exporter stability: - beta: [traces, metrics, logs] + unmaintained: [traces, metrics, logs] distributions: [contrib] codeowners: active: [shabicheng, kongluoxing, qiansheng91] diff --git a/metric-metadata/apachereceiver.yaml b/metric-metadata/apachereceiver.yaml index f09054a..99d3c3e 100644 --- a/metric-metadata/apachereceiver.yaml +++ b/metric-metadata/apachereceiver.yaml @@ -1,32 +1,36 @@ +display_name: Apache Web Server Receiver type: apache +description: | + The Apache Web Server Receiver fetches stats from an Apache Web Server instance using the `server-status?auto` endpoint. + status: class: receiver stability: beta: [metrics] distributions: [contrib] codeowners: - active: [colelaven] + active: [colelaven, ishleenk17] emeritus: [djaglowski] resource_attributes: - apache.server.name: - description: The name of the Apache HTTP server. - type: string - enabled: true - apache.server.port: - description: The port of the Apache HTTP server. - type: string - enabled: true + apache.server.name: + description: The name of the Apache HTTP server. + type: string + enabled: true + apache.server.port: + description: The port of the Apache HTTP server. + type: string + enabled: true attributes: - workers_state: - name_override: state - description: The state of workers. + connection_state: + description: The asynchronous connection state reported by Apache's server-status. type: string enum: - - busy - - idle + - writing + - keepalive + - closing cpu_level: name_override: level description: Level of processes. @@ -39,8 +43,8 @@ attributes: description: Mode of processes. type: string enum: - - system - - user + - system + - user scoreboard_state: name_override: state description: The state of a connection. @@ -58,59 +62,36 @@ attributes: - finishing - idle_cleanup - unknown + workers_state: + name_override: state + description: The state of workers. + type: string + enum: + - busy + - idle metrics: - apache.uptime: - enabled: true - description: The amount of time that the server has been running in seconds. - unit: s - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [] - apache.current_connections: + apache.connections.async: enabled: true - description: The number of active connections currently attached to the HTTP server. + stability: development + description: The number of connections in different asynchronous states reported by Apache's server-status. unit: "{connections}" - sum: - value_type: int - input_type: string - monotonic: false - aggregation_temporality: cumulative - attributes: [] - apache.workers: - enabled: true - description: The number of workers currently attached to the HTTP server. - unit: "{workers}" - sum: + gauge: value_type: int input_type: string - monotonic: false - aggregation_temporality: cumulative - attributes: [workers_state] - apache.requests: + attributes: [connection_state] + apache.cpu.load: enabled: true - description: The number of requests serviced by the HTTP server per second. - unit: "{requests}" - sum: - value_type: int + stability: development + description: Current load of the CPU. + unit: "%" + gauge: + value_type: double input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [] - apache.traffic: - enabled: true - description: Total HTTP server traffic. - unit: By - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative attributes: [] apache.cpu.time: enabled: true + stability: development description: Jiffs used by processes of given category. unit: "{jiff}" sum: @@ -119,33 +100,39 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [cpu_level, cpu_mode] - apache.cpu.load: + apache.current_connections: enabled: true - description: Current load of the CPU. - unit: "%" - gauge: - value_type: double + stability: development + description: The number of active connections currently attached to the HTTP server. + unit: "{connections}" + sum: + value_type: int input_type: string + monotonic: false + aggregation_temporality: cumulative attributes: [] apache.load.1: enabled: true + stability: development description: The average server load during the last minute. unit: "%" gauge: value_type: double input_type: string attributes: [] - apache.load.5: + apache.load.15: enabled: true - description: The average server load during the last 5 minutes. + stability: development + description: The average server load during the last 15 minutes. unit: "%" gauge: value_type: double input_type: string attributes: [] - apache.load.15: + apache.load.5: enabled: true - description: The average server load during the last 15 minutes. + stability: development + description: The average server load during the last 5 minutes. unit: "%" gauge: value_type: double @@ -153,6 +140,7 @@ metrics: attributes: [] apache.request.time: enabled: true + stability: development description: Total time spent on handling requests. unit: ms sum: @@ -161,8 +149,20 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [] + apache.requests: + enabled: true + stability: development + description: The number of requests serviced by the HTTP server per second. + unit: "{requests}" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [] apache.scoreboard: enabled: true + stability: development description: The number of workers in each state. extended_documentation: >- The [apache scoreboard](https://metacpan.org/pod/Apache::Scoreboard#DESCRIPTION) @@ -174,3 +174,35 @@ metrics: monotonic: false aggregation_temporality: cumulative attributes: [scoreboard_state] + apache.traffic: + enabled: true + stability: development + description: Total HTTP server traffic. + unit: By + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [] + apache.uptime: + enabled: true + stability: development + description: The amount of time that the server has been running in seconds. + unit: s + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [] + apache.workers: + enabled: true + stability: development + description: The number of workers currently attached to the HTTP server. + unit: "{workers}" + sum: + value_type: int + input_type: string + monotonic: false + aggregation_temporality: cumulative + attributes: [workers_state] diff --git a/metric-metadata/apachesparkreceiver.yaml b/metric-metadata/apachesparkreceiver.yaml index e05add9..c5ada38 100644 --- a/metric-metadata/apachesparkreceiver.yaml +++ b/metric-metadata/apachesparkreceiver.yaml @@ -1,5 +1,11 @@ +display_name: Apache Spark Receiver type: apachespark +description: | + The Apache Spark Receiver fetches metrics for an Apache Spark cluster through the Apache Spark REST API - specifically, + the `/metrics/json`, `/api/v1/applications/[app-id]/stages`, `/api/v1/applications/[app-id]/executors`, and + `/api/v1/applications/[app-id]/jobs` endpoints. + status: class: receiver stability: @@ -17,13 +23,6 @@ resource_attributes: description: The name of the application for which the metric was recorded. type: string enabled: true - spark.stage.id: - description: The ID of the application stage for which the metric was recorded. - type: int - enabled: true - spark.stage.attempt.id: - description: The ID of the stage attempt for which the metric was recorded. - type: int spark.executor.id: description: The ID of the executor for which the metric was recorded. type: string @@ -32,32 +31,22 @@ resource_attributes: description: The ID of the job for which the metric was recorded. type: int enabled: true + spark.stage.attempt.id: + description: The ID of the stage attempt for which the metric was recorded. + type: int + enabled: false + spark.stage.id: + description: The ID of the application stage for which the metric was recorded. + type: int + enabled: true attributes: - stage_active: - name_override: active - description: Whether the stage for which the metric was recorded is active. - type: bool - stage_complete: - name_override: complete - description: Whether the stage for which the metric was recorded is complete. - type: bool - stage_pending: - name_override: pending - description: Whether the stage for which the metric was recorded is pending. - type: bool - stage_failed: - name_override: failed - description: Whether the stage for which the metric was recorded is failed. - type: bool - stage_task_result: - name_override: result - description: The result of the stage tasks for which the metric was recorded. + direction: + description: Whether the metric is in regards to input or output operations. type: string enum: - - completed - - failed - - killed + - in + - out executor_task_result: name_override: result description: The result of the executor tasks for which the metric was recorded. @@ -65,6 +54,12 @@ attributes: enum: - completed - failed + gc_type: + description: The type of the garbage collection performed for the metric. + type: string + enum: + - major + - minor job_result: name_override: result description: The result of the job stages or tasks for which the metric was recorded. @@ -73,30 +68,19 @@ attributes: - completed - failed - skipped - direction: - description: Whether the metric is in regards to input or output operations. - type: string - enum: - - in - - out - source: - description: The source from which data was fetched for the metric. - type: string - enum: - - local - - remote location: description: The location of the memory for which the metric was recorded.. type: string enum: - on_heap - off_heap - state: - description: The state of the memory for which the metric was recorded. + pool_memory_type: + name_override: type + description: The type of pool memory for which the metric was recorded. type: string enum: - - used - - free + - direct + - mapped scheduler_status: name_override: status description: The status of the DAGScheduler stages for which the metric was recorded. @@ -104,259 +88,350 @@ attributes: enum: - waiting - running - pool_memory_type: - name_override: type - description: The type of pool memory for which the metric was recorded. + source: + description: The source from which data was fetched for the metric. type: string enum: - - direct - - mapped - gc_type: - description: The type of the garbage collection performed for the metric. + - local + - remote + stage_active: + name_override: active + description: Whether the stage for which the metric was recorded is active. + type: bool + stage_complete: + name_override: complete + description: Whether the stage for which the metric was recorded is complete. + type: bool + stage_failed: + name_override: failed + description: Whether the stage for which the metric was recorded is failed. + type: bool + stage_pending: + name_override: pending + description: Whether the stage for which the metric was recorded is pending. + type: bool + stage_task_result: + name_override: result + description: The result of the stage tasks for which the metric was recorded. type: string enum: - - major - - minor + - completed + - failed + - killed + state: + description: The state of the memory for which the metric was recorded. + type: string + enum: + - used + - free metrics: #stage - spark.stage.status: - description: A one-hot encoding representing the status of this stage. + # metrics + spark.driver.block_manager.disk.usage: + description: Disk space used by the BlockManager. enabled: true + stability: development sum: - monotonic: false aggregation_temporality: cumulative + monotonic: false value_type: int - unit: "{ status }" - attributes: - [stage_active, stage_complete, stage_pending, stage_failed] - spark.stage.task.active: - description: Number of active tasks in this stage. + unit: mb + attributes: [] + spark.driver.block_manager.memory.usage: + description: Memory usage for the driver's BlockManager. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false value_type: int - unit: "{ task }" + unit: mb + attributes: [location, state] + spark.driver.code_generator.compilation.average_time: + description: Average time spent during CodeGenerator source code compilation operations. + enabled: true + stability: development + gauge: + value_type: double + unit: ms attributes: [] - spark.stage.task.result: - description: Number of tasks with a specific result in this stage. + spark.driver.code_generator.compilation.count: + description: Number of source code compilation operations performed by the CodeGenerator. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ task }" - attributes: - [stage_task_result] - spark.stage.executor.run_time: - description: Amount of time spent by the executor in this stage. + unit: "{ compilation }" + attributes: [] + spark.driver.code_generator.generated_class.average_size: + description: Average class size of the classes generated by the CodeGenerator. + enabled: true + stability: development + gauge: + value_type: double + unit: bytes + attributes: [] + spark.driver.code_generator.generated_class.count: + description: Number of classes generated by the CodeGenerator. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: ms + unit: "{ class }" attributes: [] - spark.stage.executor.cpu_time: - description: CPU time spent by the executor in this stage. + spark.driver.code_generator.generated_method.average_size: + description: Average method size of the classes generated by the CodeGenerator. enabled: true + stability: development + gauge: + value_type: double + unit: bytes + attributes: [] + spark.driver.code_generator.generated_method.count: + description: Number of methods generated by the CodeGenerator. + enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: ns + unit: "{ method }" attributes: [] - spark.stage.task.result_size: - description: The amount of data transmitted back to the driver by all the tasks in this stage. + spark.driver.code_generator.source_code.average_size: + description: Average size of the source code generated by a CodeGenerator code generation operation. enabled: true + stability: development + gauge: + value_type: double + unit: bytes + attributes: [] + spark.driver.code_generator.source_code.operations: + description: Number of source code generation operations performed by the CodeGenerator. + enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: bytes + unit: "{ operation }" attributes: [] - spark.stage.jvm_gc_time: - description: The amount of time the JVM spent on garbage collection in this stage. + spark.driver.dag_scheduler.job.active: + description: Number of active jobs currently being processed by the DAGScheduler. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int - unit: ms + unit: "{ job }" attributes: [] - spark.stage.memory.spilled: - description: The amount of memory moved to disk due to size constraints (spilled) in this stage. + spark.driver.dag_scheduler.job.count: + description: Number of jobs that have been submitted to the DAGScheduler. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: bytes + unit: "{ job }" attributes: [] - spark.stage.disk.spilled: - description: The amount of disk space used for storing portions of overly large data chunks that couldn't fit in memory in this stage. + spark.driver.dag_scheduler.stage.count: + description: Number of stages the DAGScheduler is either running or needs to run. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int - unit: bytes - attributes: [] - spark.stage.memory.peak: - description: Peak memory used by internal data structures created during shuffles, aggregations and joins in this stage. + unit: "{ stage }" + attributes: [scheduler_status] + spark.driver.dag_scheduler.stage.failed: + description: Number of failed stages run by the DAGScheduler. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: bytes + unit: "{ stage }" attributes: [] - spark.stage.io.size: - description: Amount of data written and read at this stage. + spark.driver.executor.gc.operations: + description: Number of garbage collection operations performed by the driver. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: bytes - attributes: - [direction] - spark.stage.io.records: - description: Number of records written and read in this stage. + unit: "{ gc_operation }" + attributes: [gc_type] + spark.driver.executor.gc.time: + description: Total elapsed time during garbage collection operations performed by the driver. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ record }" - attributes: - [direction] - spark.stage.shuffle.blocks_fetched: - description: Number of blocks fetched in shuffle operations in this stage. + unit: ms + attributes: [gc_type] + spark.driver.executor.memory.execution: + description: Amount of execution memory currently used by the driver. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int - unit: "{ block }" - attributes: - [source] - spark.stage.shuffle.fetch_wait_time: - description: Time spent in this stage waiting for remote shuffle blocks. + unit: bytes + attributes: [location] + spark.driver.executor.memory.jvm: + description: Amount of memory used by the driver's JVM. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int - unit: ms - attributes: [] - spark.stage.shuffle.io.disk: - description: Amount of data read to disk in shuffle operations (sometimes required for large blocks, as opposed to the default behavior of reading into memory). + unit: bytes + attributes: [location] + spark.driver.executor.memory.pool: + description: Amount of pool memory currently used by the driver. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int unit: bytes - attributes: [] - spark.stage.shuffle.io.read.size: - description: Amount of data read in shuffle operations in this stage. + attributes: [pool_memory_type] + spark.driver.executor.memory.storage: + description: Amount of storage memory currently used by the driver. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int unit: bytes - attributes: - [source] - spark.stage.shuffle.io.write.size: - description: Amount of data written in shuffle operations in this stage. + attributes: [location] + spark.driver.hive_external_catalog.file_cache_hits: + description: Number of file cache hits on the HiveExternalCatalog. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: bytes - attributes: - [] - spark.stage.shuffle.io.records: - description: Number of records written or read in shuffle operations in this stage. + unit: "{ hit }" + attributes: [] + spark.driver.hive_external_catalog.files_discovered: + description: Number of files discovered while listing the partitions of a table in the Hive metastore enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ record }" - attributes: - [direction] - spark.stage.shuffle.write_time: - description: Time spent blocking on writes to disk or buffer cache in this stage. + unit: "{ file }" + attributes: [] + spark.driver.hive_external_catalog.hive_client_calls: + description: Number of calls to the underlying Hive Metastore client made by the Spark application. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: ns + unit: "{ call }" attributes: [] - #executor - spark.executor.memory.usage: - description: Storage memory used by this executor. + spark.driver.hive_external_catalog.parallel_listing_jobs: + description: Number of parallel listing jobs initiated by the HiveExternalCatalog when listing partitions of a table. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: bytes + unit: "{ listing_job }" attributes: [] - spark.executor.disk.usage: - description: Disk space used by this executor for RDD storage. + spark.driver.hive_external_catalog.partitions_fetched: + description: Table partitions fetched by the HiveExternalCatalog. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: bytes + unit: "{ partition }" attributes: [] - spark.executor.task.limit: - description: Maximum number of tasks that can run concurrently in this executor. + spark.driver.jvm_cpu_time: + description: Current CPU time taken by the Spark driver. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: "{ task }" + unit: ns attributes: [] - spark.executor.task.active: - description: Number of tasks currently running in this executor. + spark.driver.live_listener_bus.dropped: + description: Number of events that have been dropped by the LiveListenerBus. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: "{ task }" + unit: "{ event }" attributes: [] - spark.executor.task.result: - description: Number of tasks with a specific result in this executor. + spark.driver.live_listener_bus.posted: + description: Number of events that have been posted on the LiveListenerBus. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ task }" - attributes: [executor_task_result] - spark.executor.time: - description: Elapsed time the JVM spent executing tasks in this executor. + unit: "{ event }" + attributes: [] + spark.driver.live_listener_bus.processing_time.average: + description: Average time taken for the LiveListenerBus to process an event posted to it. + enabled: true + stability: development + gauge: + value_type: double + unit: ms + attributes: [] + spark.driver.live_listener_bus.queue_size: + description: Number of events currently waiting to be processed by the LiveListenerBus. + enabled: true + stability: development + sum: + aggregation_temporality: cumulative + monotonic: false + value_type: int + unit: "{ event }" + attributes: [] + spark.executor.disk.usage: + description: Disk space used by this executor for RDD storage. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: true + monotonic: false value_type: int - unit: ms + unit: bytes attributes: [] spark.executor.gc_time: description: Elapsed time the JVM spent in garbage collection in this executor. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -366,15 +441,28 @@ metrics: spark.executor.input_size: description: Amount of data input for this executor. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int unit: bytes attributes: [] + #executor + spark.executor.memory.usage: + description: Storage memory used by this executor. + enabled: true + stability: development + sum: + aggregation_temporality: cumulative + monotonic: false + value_type: int + unit: bytes + attributes: [] spark.executor.shuffle.io.size: description: Amount of data written and read during shuffle operations for this executor. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -384,34 +472,57 @@ metrics: spark.executor.storage_memory.usage: description: The executor's storage memory usage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false value_type: int unit: bytes attributes: [location, state] - #job - spark.job.task.active: - description: Number of active tasks in this job. + spark.executor.task.active: + description: Number of tasks currently running in this executor. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false value_type: int unit: "{ task }" attributes: [] - spark.job.task.result: - description: Number of tasks with a specific result in this job. + spark.executor.task.limit: + description: Maximum number of tasks that can run concurrently in this executor. + enabled: true + stability: development + sum: + aggregation_temporality: cumulative + monotonic: false + value_type: int + unit: "{ task }" + attributes: [] + spark.executor.task.result: + description: Number of tasks with a specific result in this executor. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int unit: "{ task }" - attributes: [job_result] + attributes: [executor_task_result] + spark.executor.time: + description: Elapsed time the JVM spent executing tasks in this executor. + enabled: true + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + unit: ms + attributes: [] spark.job.stage.active: description: Number of active stages in this job. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false @@ -421,273 +532,224 @@ metrics: spark.job.stage.result: description: Number of stages with a specific result in this job. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int unit: "{ stage }" attributes: [job_result] - # metrics - spark.driver.block_manager.disk.usage: - description: Disk space used by the BlockManager. + #job + spark.job.task.active: + description: Number of active tasks in this job. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false value_type: int - unit: mb + unit: "{ task }" attributes: [] - spark.driver.block_manager.memory.usage: - description: Memory usage for the driver's BlockManager. + spark.job.task.result: + description: Number of tasks with a specific result in this job. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: mb - attributes: [location, state] - spark.driver.hive_external_catalog.file_cache_hits: - description: Number of file cache hits on the HiveExternalCatalog. + unit: "{ task }" + attributes: [job_result] + spark.stage.disk.spilled: + description: The amount of disk space used for storing portions of overly large data chunks that couldn't fit in memory in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ hit }" + unit: bytes attributes: [] - spark.driver.hive_external_catalog.files_discovered: - description: Number of files discovered while listing the partitions of a table in the Hive metastore + spark.stage.executor.cpu_time: + description: CPU time spent by the executor in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ file }" + unit: ns attributes: [] - spark.driver.hive_external_catalog.hive_client_calls: - description: Number of calls to the underlying Hive Metastore client made by the Spark application. + spark.stage.executor.run_time: + description: Amount of time spent by the executor in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ call }" + unit: ms attributes: [] - spark.driver.hive_external_catalog.parallel_listing_jobs: - description: Number of parallel listing jobs initiated by the HiveExternalCatalog when listing partitions of a table. + spark.stage.io.records: + description: Number of records written and read in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ listing_job }" - attributes: [] - spark.driver.hive_external_catalog.partitions_fetched: - description: Table partitions fetched by the HiveExternalCatalog. + unit: "{ record }" + attributes: [direction] + spark.stage.io.size: + description: Amount of data written and read at this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ partition }" - attributes: [] - spark.driver.code_generator.compilation.count: - description: Number of source code compilation operations performed by the CodeGenerator. + unit: bytes + attributes: [direction] + spark.stage.jvm_gc_time: + description: The amount of time the JVM spent on garbage collection in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ compilation }" - attributes: [] - spark.driver.code_generator.compilation.average_time: - description: Average time spent during CodeGenerator source code compilation operations. - enabled: true - gauge: - value_type: double unit: ms attributes: [] - spark.driver.code_generator.generated_class.count: - description: Number of classes generated by the CodeGenerator. + spark.stage.memory.peak: + description: Peak memory used by internal data structures created during shuffles, aggregations and joins in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ class }" - attributes: [] - spark.driver.code_generator.generated_class.average_size: - description: Average class size of the classes generated by the CodeGenerator. - enabled: true - gauge: - value_type: double unit: bytes attributes: [] - spark.driver.code_generator.generated_method.count: - description: Number of methods generated by the CodeGenerator. + spark.stage.memory.spilled: + description: The amount of memory moved to disk due to size constraints (spilled) in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ method }" - attributes: [] - spark.driver.code_generator.generated_method.average_size: - description: Average method size of the classes generated by the CodeGenerator. - enabled: true - gauge: - value_type: double unit: bytes attributes: [] - spark.driver.code_generator.source_code.operations: - description: Number of source code generation operations performed by the CodeGenerator. + spark.stage.shuffle.blocks_fetched: + description: Number of blocks fetched in shuffle operations in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ operation }" - attributes: [] - spark.driver.code_generator.source_code.average_size: - description: Average size of the source code generated by a CodeGenerator code generation operation. - enabled: true - gauge: - value_type: double - unit: bytes - attributes: [] - spark.driver.dag_scheduler.job.active: - description: Number of active jobs currently being processed by the DAGScheduler. - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: false - value_type: int - unit: "{ job }" - attributes: [] - spark.driver.dag_scheduler.job.count: - description: Number of jobs that have been submitted to the DAGScheduler. + unit: "{ block }" + attributes: [source] + spark.stage.shuffle.fetch_wait_time: + description: Time spent in this stage waiting for remote shuffle blocks. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ job }" + unit: ms attributes: [] - spark.driver.dag_scheduler.stage.failed: - description: Number of failed stages run by the DAGScheduler. + spark.stage.shuffle.io.disk: + description: Amount of data read to disk in shuffle operations (sometimes required for large blocks, as opposed to the default behavior of reading into memory). enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ stage }" + unit: bytes attributes: [] - spark.driver.dag_scheduler.stage.count: - description: Number of stages the DAGScheduler is either running or needs to run. - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: false - value_type: int - unit: "{ stage }" - attributes: [scheduler_status] - spark.driver.live_listener_bus.posted: - description: Number of events that have been posted on the LiveListenerBus. + spark.stage.shuffle.io.read.size: + description: Amount of data read in shuffle operations in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ event }" - attributes: [] - spark.driver.live_listener_bus.processing_time.average: - description: Average time taken for the LiveListenerBus to process an event posted to it. - enabled: true - gauge: - value_type: double - unit: ms - attributes: [] - spark.driver.live_listener_bus.dropped: - description: Number of events that have been dropped by the LiveListenerBus. + unit: bytes + attributes: [source] + spark.stage.shuffle.io.records: + description: Number of records written or read in shuffle operations in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ event }" - attributes: [] - spark.driver.live_listener_bus.queue_size: - description: Number of events currently waiting to be processed by the LiveListenerBus. + unit: "{ record }" + attributes: [direction] + spark.stage.shuffle.io.write.size: + description: Amount of data written in shuffle operations in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative - monotonic: false + monotonic: true value_type: int - unit: "{ event }" + unit: bytes attributes: [] - spark.driver.jvm_cpu_time: - description: Current CPU time taken by the Spark driver. + spark.stage.shuffle.write_time: + description: Time spent blocking on writes to disk or buffer cache in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int unit: ns attributes: [] - spark.driver.executor.memory.jvm: - description: Amount of memory used by the driver's JVM. - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: false - value_type: int - unit: bytes - attributes: [location] - spark.driver.executor.memory.execution: - description: Amount of execution memory currently used by the driver. + spark.stage.status: + description: A one-hot encoding representing the status of this stage. enabled: true + stability: development sum: - aggregation_temporality: cumulative monotonic: false - value_type: int - unit: bytes - attributes: [location] - spark.driver.executor.memory.storage: - description: Amount of storage memory currently used by the driver. - enabled: true - sum: aggregation_temporality: cumulative - monotonic: false value_type: int - unit: bytes - attributes: [location] - spark.driver.executor.memory.pool: - description: Amount of pool memory currently used by the driver. + unit: "{ status }" + attributes: [stage_active, stage_complete, stage_pending, stage_failed] + spark.stage.task.active: + description: Number of active tasks in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: false value_type: int - unit: bytes - attributes: [pool_memory_type] - spark.driver.executor.gc.operations: - description: Number of garbage collection operations performed by the driver. + unit: "{ task }" + attributes: [] + spark.stage.task.result: + description: Number of tasks with a specific result in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: "{ gc_operation }" - attributes: [gc_type] - spark.driver.executor.gc.time: - description: Total elapsed time during garbage collection operations performed by the driver. + unit: "{ task }" + attributes: [stage_task_result] + spark.stage.task.result_size: + description: The amount of data transmitted back to the driver by all the tasks in this stage. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int - unit: ms - attributes: [gc_type] + unit: bytes + attributes: [] tests: config: diff --git a/metric-metadata/asapauthextension.yaml b/metric-metadata/asapauthextension.yaml index d4ee4fa..b96ef7d 100644 --- a/metric-metadata/asapauthextension.yaml +++ b/metric-metadata/asapauthextension.yaml @@ -1,5 +1,10 @@ +display_name: ASAP Client Authentication Extension type: asapclient +description: | + This extension provides [Atlassian Service Authentication Protocol](https://s2sauth.bitbucket.io/) (ASAP) client + credentials for HTTP or gRPC based exporters. + status: class: extension stability: diff --git a/metric-metadata/attributesprocessor.yaml b/metric-metadata/attributesprocessor.yaml index 17aa06b..67e7025 100644 --- a/metric-metadata/attributesprocessor.yaml +++ b/metric-metadata/attributesprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Attributes Processor type: attributes status: diff --git a/metric-metadata/avrologencodingextension.yaml b/metric-metadata/avrologencodingextension.yaml index 9fb3347..3a41d73 100644 --- a/metric-metadata/avrologencodingextension.yaml +++ b/metric-metadata/avrologencodingextension.yaml @@ -1,5 +1,10 @@ +display_name: AVRO Log Encoding Extension type: avro_log_encoding +description: > + The `avrolog` encoding extension is used to unmarshal AVRO and insert it into the body of a log record. Marshalling + is not supported. + status: disable_codecov_badge: true class: extension diff --git a/metric-metadata/awscloudwatchlogsexporter.yaml b/metric-metadata/awscloudwatchlogsexporter.yaml index 6a9dfd8..5ce84e0 100644 --- a/metric-metadata/awscloudwatchlogsexporter.yaml +++ b/metric-metadata/awscloudwatchlogsexporter.yaml @@ -1,13 +1,15 @@ type: awscloudwatchlogs +display_name: AWS CloudWatch Logs Exporter status: class: exporter stability: - beta: [logs] + alpha: [logs] distributions: [contrib] codeowners: - active: [boostchicken, rapphil] - emeritus: [bryan-aguilar] + active: [yaten2302] + emeritus: [bryan-aguilar, boostchicken, rapphil] + seeking_new: true tests: config: diff --git a/metric-metadata/awscloudwatchmetricstreamsencodingextension.yaml b/metric-metadata/awscloudwatchmetricstreamsencodingextension.yaml index 43fbe4c..81582a6 100644 --- a/metric-metadata/awscloudwatchmetricstreamsencodingextension.yaml +++ b/metric-metadata/awscloudwatchmetricstreamsencodingextension.yaml @@ -1,5 +1,10 @@ +display_name: AWS CloudWatch Metric Streams Encoding Extension type: awscloudwatchmetricstreams_encoding +description: > + This extension unmarshalls metrics encoded in formats produced by + [Amazon CloudWatch Metric Streams](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Metric-Streams.html). + status: disable_codecov_badge: true class: extension diff --git a/metric-metadata/awscloudwatchreceiver.yaml b/metric-metadata/awscloudwatchreceiver.yaml index d60deb8..93bf693 100644 --- a/metric-metadata/awscloudwatchreceiver.yaml +++ b/metric-metadata/awscloudwatchreceiver.yaml @@ -1,5 +1,10 @@ +display_name: AWS CloudWatch Receiver type: awscloudwatch +description: | + The AWS CloudWatch Receiver receives Cloudwatch events from [AWS CloudWatch](https://aws.amazon.com/cloudwatch/) via + the [AWS SDK for Cloudwatch Logs](https://docs.aws.amazon.com/sdk-for-go/api/service/cloudwatchlogs/) + status: class: receiver stability: diff --git a/metric-metadata/awscontainerinsightreceiver.yaml b/metric-metadata/awscontainerinsightreceiver.yaml index 1edba50..b1c7ffa 100644 --- a/metric-metadata/awscontainerinsightreceiver.yaml +++ b/metric-metadata/awscontainerinsightreceiver.yaml @@ -1,3 +1,4 @@ +display_name: AWS Container Insights Receiver type: awscontainerinsightreceiver status: diff --git a/metric-metadata/awsecscontainermetricsreceiver.yaml b/metric-metadata/awsecscontainermetricsreceiver.yaml index 167d46c..5991659 100644 --- a/metric-metadata/awsecscontainermetricsreceiver.yaml +++ b/metric-metadata/awsecscontainermetricsreceiver.yaml @@ -1,3 +1,4 @@ +display_name: AWS ECS Container Metrics Receiver type: awsecscontainermetrics status: diff --git a/metric-metadata/awsemfexporter.yaml b/metric-metadata/awsemfexporter.yaml index 1331c05..52dde01 100644 --- a/metric-metadata/awsemfexporter.yaml +++ b/metric-metadata/awsemfexporter.yaml @@ -1,4 +1,5 @@ type: awsemf +display_name: AWS CloudWatch EMF Exporter status: class: exporter diff --git a/metric-metadata/awsfirehosereceiver.yaml b/metric-metadata/awsfirehosereceiver.yaml index 770b42e..6b080f9 100644 --- a/metric-metadata/awsfirehosereceiver.yaml +++ b/metric-metadata/awsfirehosereceiver.yaml @@ -1,5 +1,10 @@ +display_name: AWS Kinesis Data Firehose Receiver type: awsfirehose +description: | + The AWS Kinesis Data Firehose Receiver is for ingesting delivery stream messages and parsing the records received + based on the configured record type. + status: class: receiver stability: diff --git a/metric-metadata/awskinesisexporter.yaml b/metric-metadata/awskinesisexporter.yaml index f889f66..0d9a074 100644 --- a/metric-metadata/awskinesisexporter.yaml +++ b/metric-metadata/awskinesisexporter.yaml @@ -1,4 +1,5 @@ type: awskinesis +display_name: AWS Kinesis Exporter status: class: exporter diff --git a/metric-metadata/awslambdareceiver.yaml b/metric-metadata/awslambdareceiver.yaml new file mode 100644 index 0000000..63f4344 --- /dev/null +++ b/metric-metadata/awslambdareceiver.yaml @@ -0,0 +1,17 @@ +display_name: AWS Lambda Receiver +type: awslambda + +status: + class: receiver + stability: + development: [logs, metrics] + distributions: [] + codeowners: + active: [MichaelKatsoulis, Kavindu-Dodan, axw, pjanotti] + +tests: + # TODO Fix this + skip_lifecycle: true + config: + s3: + encoding: awslogs diff --git a/metric-metadata/awslogsencodingextension.yaml b/metric-metadata/awslogsencodingextension.yaml index 7b16fe9..7aafb45 100644 --- a/metric-metadata/awslogsencodingextension.yaml +++ b/metric-metadata/awslogsencodingextension.yaml @@ -1,14 +1,17 @@ +display_name: AWS Logs Encoding Extension type: awslogs_encoding +description: This extension unmarshalls logs encoded in formats produced by AWS services. + status: disable_codecov_badge: true class: extension stability: - development: [extension] - distributions: [] + alpha: [extension] + distributions: [contrib] codeowners: active: [axw, constanca-m] tests: config: - format: cloudwatch_logs_subscription_filter + format: cloudwatch diff --git a/metric-metadata/awsproxy.yaml b/metric-metadata/awsproxy.yaml index 205c27c..d0b0ef1 100644 --- a/metric-metadata/awsproxy.yaml +++ b/metric-metadata/awsproxy.yaml @@ -1,5 +1,12 @@ +display_name: AWS Proxy Extension type: awsproxy +description: | + The AWS proxy accepts requests without any authentication of AWS signatures applied and forwards them to the + AWS API, applying authentication and signing. This allows applications to avoid needing AWS credentials to access + a service, instead configuring the AWS exporter and/or proxy in the OpenTelemetry collector and only providing the + collector with credentials. + status: class: extension stability: diff --git a/metric-metadata/awss3exporter.yaml b/metric-metadata/awss3exporter.yaml index da06408..8102deb 100644 --- a/metric-metadata/awss3exporter.yaml +++ b/metric-metadata/awss3exporter.yaml @@ -1,4 +1,5 @@ type: awss3 +display_name: AWS S3 Exporter status: class: exporter diff --git a/metric-metadata/awss3receiver.yaml b/metric-metadata/awss3receiver.yaml index 7cb6e51..09e67ab 100644 --- a/metric-metadata/awss3receiver.yaml +++ b/metric-metadata/awss3receiver.yaml @@ -1,3 +1,4 @@ +display_name: AWS S3 Receiver type: awss3 status: @@ -11,3 +12,5 @@ tests: config: starttime: "2024-01-31" endtime: "2024-02-03" + s3downloader: + s3_bucket: "my-bucket" diff --git a/metric-metadata/awsxrayexporter.yaml b/metric-metadata/awsxrayexporter.yaml index eef7539..b7df1fc 100644 --- a/metric-metadata/awsxrayexporter.yaml +++ b/metric-metadata/awsxrayexporter.yaml @@ -1,4 +1,5 @@ type: awsxray +display_name: AWS X-Ray Tracing Exporter status: class: exporter diff --git a/metric-metadata/awsxrayreceiver.yaml b/metric-metadata/awsxrayreceiver.yaml index eb300f2..6848d3c 100644 --- a/metric-metadata/awsxrayreceiver.yaml +++ b/metric-metadata/awsxrayreceiver.yaml @@ -1,3 +1,4 @@ +display_name: AWS X-Ray Receiver type: awsxray status: diff --git a/metric-metadata/azure.yaml b/metric-metadata/azure.yaml index c8726e8..c689d90 100644 --- a/metric-metadata/azure.yaml +++ b/metric-metadata/azure.yaml @@ -1,5 +1,59 @@ +type: azuredetector + status: - disable_codecov_badge: true - class: pkg + class: processor + stability: + beta: [traces, metrics, logs] + development: [profiles] codeowners: - active: [open-telemetry/collector-approvers, atoulme, cparkins] + active: [Aneurysm9, dashpole, paulojmdias] + +resource_attributes: + azure.resourcegroup.name: + description: The azure.resourcegroup.name + enabled: true + type: string + azure.vm.name: + description: The azure.vm.name + enabled: true + type: string + azure.vm.scaleset.name: + description: The azure.vm.scaleset.name + enabled: true + type: string + azure.vm.size: + description: The azure.vm.size + enabled: true + type: string + cloud.account.id: + description: The cloud.account.id + type: string + enabled: true + cloud.availability_zone: + description: The cloud availability zone + type: string + enabled: false + cloud.platform: + description: The cloud.platform + type: string + enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true + cloud.region: + description: The cloud.region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/azureauthextension.yaml b/metric-metadata/azureauthextension.yaml index c08d52c..12d069e 100644 --- a/metric-metadata/azureauthextension.yaml +++ b/metric-metadata/azureauthextension.yaml @@ -1,3 +1,4 @@ +display_name: Azure Authenticator Extension type: azureauth status: diff --git a/metric-metadata/azureblobexporter.yaml b/metric-metadata/azureblobexporter.yaml index 513ed80..da826a4 100644 --- a/metric-metadata/azureblobexporter.yaml +++ b/metric-metadata/azureblobexporter.yaml @@ -1,5 +1,6 @@ type: azureblob scope_name: otelcol/azureblobexporter +display_name: Azure Blob Storage Exporter status: class: exporter diff --git a/metric-metadata/azureblobreceiver.yaml b/metric-metadata/azureblobreceiver.yaml index 2720625..c7bbac7 100644 --- a/metric-metadata/azureblobreceiver.yaml +++ b/metric-metadata/azureblobreceiver.yaml @@ -1,3 +1,4 @@ +display_name: Azure Blob Receiver type: azureblob status: diff --git a/metric-metadata/azuredataexplorerexporter.yaml b/metric-metadata/azuredataexplorerexporter.yaml index 9f3a63b..06aa977 100644 --- a/metric-metadata/azuredataexplorerexporter.yaml +++ b/metric-metadata/azuredataexplorerexporter.yaml @@ -1,4 +1,5 @@ type: azuredataexplorer +display_name: Azure Data Explorer Exporter status: class: exporter diff --git a/metric-metadata/azureencodingextension.yaml b/metric-metadata/azureencodingextension.yaml new file mode 100644 index 0000000..e5b57b6 --- /dev/null +++ b/metric-metadata/azureencodingextension.yaml @@ -0,0 +1,15 @@ +display_name: Azure Logs/Traces/Metrics Encoding Extension +type: azure_encoding + +description: > + This extension is designed for unmarshaling logs/traces/metrics encoded in specific format + produced by [Azure Diagnostic Settings Export](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/diagnostic-settings) or + [Azure Data Collection Rules (DCRs)](https://learn.microsoft.com/en-us/azure/azure-monitor/data-collection/data-collection-rule-overview) + +status: + disable_codecov_badge: true + class: extension + stability: + development: [extension] + codeowners: + active: [axw, constanca-m] diff --git a/metric-metadata/azureeventhubreceiver.yaml b/metric-metadata/azureeventhubreceiver.yaml index 034b0c4..7432a83 100644 --- a/metric-metadata/azureeventhubreceiver.yaml +++ b/metric-metadata/azureeventhubreceiver.yaml @@ -1,4 +1,5 @@ -type: azureeventhub +display_name: Azure Event Hub Receiver +type: azure_event_hub status: class: receiver @@ -6,7 +7,7 @@ status: alpha: [metrics, logs, traces] distributions: [contrib] codeowners: - active: [atoulme, cparkins] + active: [atoulme, cparkins, dyl10s] emeritus: [djaglowski] seeking_new: true diff --git a/metric-metadata/azuremonitorexporter.yaml b/metric-metadata/azuremonitorexporter.yaml index 0955486..26a9d2f 100644 --- a/metric-metadata/azuremonitorexporter.yaml +++ b/metric-metadata/azuremonitorexporter.yaml @@ -1,4 +1,5 @@ type: azuremonitor +display_name: Azure Monitor Exporter status: class: exporter diff --git a/metric-metadata/azuremonitorreceiver.yaml b/metric-metadata/azuremonitorreceiver.yaml index 33abee5..4cf9ee9 100644 --- a/metric-metadata/azuremonitorreceiver.yaml +++ b/metric-metadata/azuremonitorreceiver.yaml @@ -1,23 +1,30 @@ +display_name: Azure Monitor Receiver type: azuremonitor +description: The Azure Monitor Receiver scrapes the Azure Monitor API for resource metrics. + status: class: receiver stability: alpha: [metrics] distributions: [contrib] codeowners: - active: [nslaughter, celian-garcia] + active: [celian-garcia, ishleenk17] + emeritus: [nslaughter] resource_attributes: - azuremonitor.tenant_id: - description: Azure tenant ID + azuremonitor.subscription: + description: Azure subscription name type: string + enabled: false azuremonitor.subscription_id: description: Azure subscription ID type: string - azuremonitor.subscription: - description: Azure subscription name + enabled: false + azuremonitor.tenant_id: + description: Azure tenant ID type: string + enabled: false tests: config: diff --git a/metric-metadata/basicauthextension.yaml b/metric-metadata/basicauthextension.yaml index 8408563..39995f9 100644 --- a/metric-metadata/basicauthextension.yaml +++ b/metric-metadata/basicauthextension.yaml @@ -1,3 +1,4 @@ +display_name: Basic Auth Authenticator Extension type: basicauth status: diff --git a/metric-metadata/bearertokenauthextension.yaml b/metric-metadata/bearertokenauthextension.yaml index b5089cf..af452cc 100644 --- a/metric-metadata/bearertokenauthextension.yaml +++ b/metric-metadata/bearertokenauthextension.yaml @@ -1,3 +1,4 @@ +display_name: Bearer Token Authenticator Extension type: bearertokenauth status: diff --git a/metric-metadata/bigipreceiver.yaml b/metric-metadata/bigipreceiver.yaml index 2aa86de..c047971 100644 --- a/metric-metadata/bigipreceiver.yaml +++ b/metric-metadata/bigipreceiver.yaml @@ -3,49 +3,50 @@ type: bigip status: class: receiver stability: - beta: [metrics] + unmaintained: [metrics] distributions: [contrib] codeowners: - active: [StefanKurek] + emeritus: [StefanKurek] seeking_new: true resource_attributes: - bigip.virtual_server.name: - description: The name of the Big-IP Virtual Server. + bigip.node.ip_address: + description: The IP Address of the Big-IP Node. type: string enabled: true - bigip.virtual_server.destination: - description: The destination for the Big-IP Virtual Server. + bigip.node.name: + description: The name of the Big-IP Node. type: string enabled: true bigip.pool.name: description: The name of the Big-IP Pool. type: string enabled: true - bigip.pool_member.name: - description: The name of the Big-IP Pool Member. - type: string - enabled: true bigip.pool_member.ip_address: description: The IP Address of the Big-IP Pool Member. type: string enabled: true - bigip.node.name: - description: The name of the Big-IP Node. + bigip.pool_member.name: + description: The name of the Big-IP Pool Member. type: string enabled: true - bigip.node.ip_address: - description: The IP Address of the Big-IP Node. + bigip.virtual_server.destination: + description: The destination for the Big-IP Virtual Server. + type: string + enabled: true + bigip.virtual_server.name: + description: The name of the Big-IP Virtual Server. type: string enabled: true attributes: - direction: - description: The direction of data. + active.status: + name_override: status + description: The active status. type: string enum: - - sent - - received + - active + - inactive availability.status: name_override: status description: The availability status. @@ -54,6 +55,12 @@ attributes: - offline - unknown - available + direction: + description: The direction of data. + type: string + enum: + - sent + - received enabled.status: name_override: status description: The enabled status. @@ -61,17 +68,28 @@ attributes: enum: - disabled - enabled - active.status: - name_override: status - description: The active status. - type: string - enum: - - active - - inactive metrics: - bigip.virtual_server.data.transmitted: - description: Amount of data transmitted to and from the virtual server. + bigip.node.availability: + description: Availability of the node. + stability: development + unit: "1" + gauge: + value_type: int + attributes: [availability.status] + enabled: true + bigip.node.connection.count: + description: Current number of connections to the node. + stability: development + unit: "{connections}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + enabled: true + bigip.node.data.transmitted: + description: Amount of data transmitted to and from the node. + stability: development unit: "By" sum: monotonic: true @@ -79,47 +97,62 @@ metrics: value_type: int attributes: [direction] enabled: true - bigip.virtual_server.connection.count: - description: Current number of connections to the virtual server. - unit: "{connections}" + bigip.node.enabled: + description: Enabled state of of the node. + stability: development + unit: "1" + gauge: + value_type: int + attributes: [enabled.status] + enabled: true + bigip.node.packet.count: + description: Number of packets transmitted to and from the node. + stability: development + unit: "{packets}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int + attributes: [direction] enabled: true - bigip.virtual_server.request.count: - description: Number of requests to the virtual server. + bigip.node.request.count: + description: Number of requests to the node. + stability: development unit: "{requests}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - bigip.virtual_server.packet.count: - description: Number of packets transmitted to and from the virtual server. - unit: "{packets}" + bigip.node.session.count: + description: Current number of sessions for the node. + stability: development + unit: "{sessions}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [direction] enabled: true - bigip.virtual_server.availability: - description: Availability of the virtual server. + bigip.pool.availability: + description: Availability of the pool. + stability: development unit: "1" gauge: value_type: int attributes: [availability.status] enabled: true - bigip.virtual_server.enabled: - description: Enabled state of of the virtual server. - unit: "1" - gauge: + bigip.pool.connection.count: + description: Current number of connections to the pool. + stability: development + unit: "{connections}" + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int - attributes: [enabled.status] enabled: true bigip.pool.data.transmitted: description: Amount of data transmitted to and from the pool. + stability: development unit: "By" sum: monotonic: true @@ -127,24 +160,27 @@ metrics: value_type: int attributes: [direction] enabled: true - bigip.pool.connection.count: - description: Current number of connections to the pool. - unit: "{connections}" - sum: - monotonic: false - aggregation_temporality: cumulative + bigip.pool.enabled: + description: Enabled state of of the pool. + stability: development + unit: "1" + gauge: value_type: int + attributes: [enabled.status] enabled: true - bigip.pool.request.count: - description: Number of requests to the pool. - unit: "{requests}" + bigip.pool.member.count: + description: Total number of pool members. + stability: development + unit: "{members}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int + attributes: [active.status] enabled: true bigip.pool.packet.count: description: Number of packets transmitted to and from the pool. + stability: development unit: "{packets}" sum: monotonic: true @@ -152,31 +188,35 @@ metrics: value_type: int attributes: [direction] enabled: true - bigip.pool.member.count: - description: Total number of pool members. - unit: "{members}" + bigip.pool.request.count: + description: Number of requests to the pool. + stability: development + unit: "{requests}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [active.status] enabled: true - bigip.pool.availability: - description: Availability of the pool. + bigip.pool_member.availability: + description: Availability of the pool member. + stability: development unit: "1" gauge: value_type: int attributes: [availability.status] enabled: true - bigip.pool.enabled: - description: Enabled state of of the pool. - unit: "1" - gauge: + bigip.pool_member.connection.count: + description: Current number of connections to the pool member. + stability: development + unit: "{connections}" + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int - attributes: [enabled.status] enabled: true bigip.pool_member.data.transmitted: description: Amount of data transmitted to and from the pool member. + stability: development unit: "By" sum: monotonic: true @@ -184,80 +224,80 @@ metrics: value_type: int attributes: [direction] enabled: true - bigip.pool_member.connection.count: - description: Current number of connections to the pool member. - unit: "{connections}" - sum: - monotonic: false - aggregation_temporality: cumulative + bigip.pool_member.enabled: + description: Enabled state of of the pool member. + stability: development + unit: "1" + gauge: value_type: int + attributes: [enabled.status] enabled: true - bigip.pool_member.request.count: - description: Number of requests to the pool member. - unit: "{requests}" + bigip.pool_member.packet.count: + description: Number of packets transmitted to and from the pool member. + stability: development + unit: "{packets}" sum: monotonic: true aggregation_temporality: cumulative value_type: int + attributes: [direction] enabled: true - bigip.pool_member.packet.count: - description: Number of packets transmitted to and from the pool member. - unit: "{packets}" + bigip.pool_member.request.count: + description: Number of requests to the pool member. + stability: development + unit: "{requests}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [direction] enabled: true bigip.pool_member.session.count: description: Current number of sessions for the pool member. + stability: development unit: "{sessions}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - bigip.pool_member.availability: - description: Availability of the pool member. + bigip.virtual_server.availability: + description: Availability of the virtual server. + stability: development unit: "1" gauge: value_type: int attributes: [availability.status] enabled: true - bigip.pool_member.enabled: - description: Enabled state of of the pool member. - unit: "1" - gauge: - value_type: int - attributes: [enabled.status] - enabled: true - bigip.node.data.transmitted: - description: Amount of data transmitted to and from the node. - unit: "By" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [direction] - enabled: true - bigip.node.connection.count: - description: Current number of connections to the node. + bigip.virtual_server.connection.count: + description: Current number of connections to the virtual server. + stability: development unit: "{connections}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - bigip.node.request.count: - description: Number of requests to the node. - unit: "{requests}" + bigip.virtual_server.data.transmitted: + description: Amount of data transmitted to and from the virtual server. + stability: development + unit: "By" sum: monotonic: true aggregation_temporality: cumulative value_type: int + attributes: [direction] enabled: true - bigip.node.packet.count: - description: Number of packets transmitted to and from the node. + bigip.virtual_server.enabled: + description: Enabled state of of the virtual server. + stability: development + unit: "1" + gauge: + value_type: int + attributes: [enabled.status] + enabled: true + bigip.virtual_server.packet.count: + description: Number of packets transmitted to and from the virtual server. + stability: development unit: "{packets}" sum: monotonic: true @@ -265,25 +305,12 @@ metrics: value_type: int attributes: [direction] enabled: true - bigip.node.session.count: - description: Current number of sessions for the node. - unit: "{sessions}" + bigip.virtual_server.request.count: + description: Number of requests to the virtual server. + stability: development + unit: "{requests}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - bigip.node.availability: - description: Availability of the node. - unit: "1" - gauge: - value_type: int - attributes: [availability.status] - enabled: true - bigip.node.enabled: - description: Enabled state of of the node. - unit: "1" - gauge: - value_type: int - attributes: [enabled.status] - enabled: true diff --git a/metric-metadata/bmchelixexporter.yaml b/metric-metadata/bmchelixexporter.yaml index c28c3d7..b78c3c9 100644 --- a/metric-metadata/bmchelixexporter.yaml +++ b/metric-metadata/bmchelixexporter.yaml @@ -1,4 +1,5 @@ type: bmchelix +display_name: BMC Helix Exporter status: class: exporter diff --git a/metric-metadata/cassandraexporter.yaml b/metric-metadata/cassandraexporter.yaml index fe1aada..cf65bb1 100644 --- a/metric-metadata/cassandraexporter.yaml +++ b/metric-metadata/cassandraexporter.yaml @@ -1,4 +1,5 @@ type: cassandra +display_name: Cassandra Exporter status: class: exporter diff --git a/metric-metadata/cfgardenobserver.yaml b/metric-metadata/cfgardenobserver.yaml index 9414016..c6eb54f 100644 --- a/metric-metadata/cfgardenobserver.yaml +++ b/metric-metadata/cfgardenobserver.yaml @@ -1,10 +1,11 @@ +display_name: Cloud Foundry Garden Observer Extension type: cfgarden_observer scope_name: otelcol/cfgardenobserver status: class: extension stability: - development: [extension] + alpha: [extension] codeowners: active: [crobert-1, jriguera] emeritus: [m1rp, cemdk] diff --git a/metric-metadata/cgroupruntimeextension.yaml b/metric-metadata/cgroupruntimeextension.yaml index be9dab1..72c9402 100644 --- a/metric-metadata/cgroupruntimeextension.yaml +++ b/metric-metadata/cgroupruntimeextension.yaml @@ -1,9 +1,10 @@ +display_name: Cgroup Go Runtime Extension type: cgroupruntime status: class: extension stability: - development: [extension] + alpha: [extension] distributions: [contrib] codeowners: active: [mx-psi, rogercoll] diff --git a/metric-metadata/chronyreceiver.yaml b/metric-metadata/chronyreceiver.yaml index 5cb730e..b054ce8 100644 --- a/metric-metadata/chronyreceiver.yaml +++ b/metric-metadata/chronyreceiver.yaml @@ -21,6 +21,7 @@ attributes: metrics: ntp.frequency.offset: enabled: false + stability: development description: The frequency is the rate by which the system s clock would be wrong if chronyd was not correcting it. extended_documentation: "It is expressed in ppm (parts per million). For example, a value of 1 ppm would mean that when the system’s clock thinks it has advanced 1 second, it has actually advanced by 1.000001 seconds relative to true time." unit: "ppm" @@ -30,12 +31,14 @@ metrics: - leap.status ntp.skew: enabled: true + stability: development description: This is the estimated error bound on the frequency. unit: "ppm" gauge: value_type: double ntp.stratum: enabled: false + stability: development description: The number of hops away from the reference system keeping the reference time extended_documentation: To read further, refer to https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-configuring_ntp_using_the_chrony_suite#sect-Checking_chrony_tracking unit: "{count}" @@ -43,6 +46,7 @@ metrics: value_type: int ntp.time.correction: enabled: true + stability: development description: The number of seconds difference between the system's clock and the reference clock unit: seconds gauge: @@ -51,6 +55,7 @@ metrics: - leap.status ntp.time.last_offset: enabled: true + stability: development description: The estimated local offset on the last clock update unit: seconds gauge: @@ -59,6 +64,7 @@ metrics: - leap.status ntp.time.rms_offset: enabled: false + stability: development description: the long term average of the offset value unit: seconds gauge: @@ -67,6 +73,7 @@ metrics: - leap.status ntp.time.root_delay: enabled: false + stability: development description: This is the total of the network path delays to the stratum-1 system from which the system is ultimately synchronised. unit: seconds gauge: diff --git a/metric-metadata/ciscoosreceiver.yaml b/metric-metadata/ciscoosreceiver.yaml new file mode 100644 index 0000000..433a72b --- /dev/null +++ b/metric-metadata/ciscoosreceiver.yaml @@ -0,0 +1,9 @@ +type: ciscoos + +status: + class: receiver + stability: + alpha: [metrics] + distributions: [] + codeowners: + active: [dmitryax] diff --git a/metric-metadata/clickhouseexporter.yaml b/metric-metadata/clickhouseexporter.yaml index b26a30c..2f73a82 100644 --- a/metric-metadata/clickhouseexporter.yaml +++ b/metric-metadata/clickhouseexporter.yaml @@ -1,4 +1,5 @@ type: clickhouse +display_name: ClickHouse Exporter status: class: exporter @@ -7,8 +8,10 @@ status: beta: [traces, logs] distributions: [contrib] codeowners: - active: [hanjm, dmitryax, Frapschen, SpencerTorres] + active: [hanjm, Frapschen, SpencerTorres] + emeritus: [dmitryax] -# TODO: Update the exporter to pass the tests tests: + config: + endpoint: clickhouse://localhost:9000 skip_lifecycle: true diff --git a/metric-metadata/common.yaml b/metric-metadata/common.yaml index 99961b6..0fed4e8 100644 --- a/metric-metadata/common.yaml +++ b/metric-metadata/common.yaml @@ -1,4 +1,3 @@ status: - disable_codecov_badge: true codeowners: active: [open-telemetry/collector-approvers] diff --git a/metric-metadata/configkafka.yaml b/metric-metadata/configkafka.yaml index f873998..77183bd 100644 --- a/metric-metadata/configkafka.yaml +++ b/metric-metadata/configkafka.yaml @@ -2,4 +2,4 @@ status: disable_codecov_badge: true class: pkg codeowners: - active: [pavolloffay, MovieStoreGuy, axw] + active: [pavolloffay, MovieStoreGuy, axw, paulojmdias] diff --git a/metric-metadata/consul.yaml b/metric-metadata/consul.yaml index 582d4fc..c4f1ac5 100644 --- a/metric-metadata/consul.yaml +++ b/metric-metadata/consul.yaml @@ -7,11 +7,11 @@ resource_attributes: description: The cloud.region type: string enabled: true - host.name: - description: The hostname - type: string - enabled: true host.id: description: The host.id type: string enabled: true + host.name: + description: The hostname + type: string + enabled: true diff --git a/metric-metadata/coralogixexporter.yaml b/metric-metadata/coralogixexporter.yaml index d620705..91b1611 100644 --- a/metric-metadata/coralogixexporter.yaml +++ b/metric-metadata/coralogixexporter.yaml @@ -1,4 +1,5 @@ type: coralogix +display_name: Coralogix Exporter status: class: exporter diff --git a/metric-metadata/coralogixprocessor.yaml b/metric-metadata/coralogixprocessor.yaml index abc61f1..448ebf8 100644 --- a/metric-metadata/coralogixprocessor.yaml +++ b/metric-metadata/coralogixprocessor.yaml @@ -1,10 +1,13 @@ +display_name: Coralogix Processor type: coralogix +description: The Coralogix processor adds attributes to spans that enable features in Coralogix. + status: class: processor stability: - development: [traces] + alpha: [traces] distributions: [] warnings: [Statefulness] codeowners: - active: [crobert-1, povilasv] + active: [crobert-1, povilasv, iblancasa] diff --git a/metric-metadata/couchdbreceiver.yaml b/metric-metadata/couchdbreceiver.yaml index 880263c..1f8206c 100644 --- a/metric-metadata/couchdbreceiver.yaml +++ b/metric-metadata/couchdbreceiver.yaml @@ -20,29 +20,59 @@ attributes: http.method: description: An HTTP request method. type: string - enum: [ COPY, DELETE, GET, HEAD, OPTIONS, POST, PUT ] + enum: [COPY, DELETE, GET, HEAD, OPTIONS, POST, PUT] http.status_code: description: An HTTP status code. type: string - view: - description: The view type. - type: string - enum: [ temporary_view_reads, view_reads ] operation: description: The operation type. type: string - enum: [ writes, reads ] + enum: [writes, reads] + view: + description: The view type. + type: string + enum: [temporary_view_reads, view_reads] metrics: couchdb.average_request_time: enabled: true description: The average duration of a served request. + stability: development unit: ms gauge: value_type: double + couchdb.database.open: + enabled: true + description: The number of open databases. + stability: development + unit: "{databases}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + couchdb.database.operations: + enabled: true + description: The number of database operations. + stability: development + unit: "{operations}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [operation] + couchdb.file_descriptor.open: + enabled: true + description: The number of open file descriptors. + stability: development + unit: "{files}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative couchdb.httpd.bulk_requests: enabled: true description: The number of bulk requests. + stability: development unit: "{requests}" sum: value_type: int @@ -51,52 +81,30 @@ metrics: couchdb.httpd.requests: enabled: true description: The number of HTTP requests by method. + stability: development unit: "{requests}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - attributes: [ http.method ] + attributes: [http.method] couchdb.httpd.responses: enabled: true description: The number of each HTTP status code. + stability: development unit: "{responses}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - attributes: [ http.status_code ] + attributes: [http.status_code] couchdb.httpd.views: enabled: true description: The number of views read. + stability: development unit: "{views}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - attributes: [ view ] - couchdb.database.open: - enabled: true - description: The number of open databases. - unit: "{databases}" - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - couchdb.file_descriptor.open: - enabled: true - description: The number of open file descriptors. - unit: "{files}" - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - couchdb.database.operations: - enabled: true - description: The number of database operations. - unit: "{operations}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: [ operation ] + attributes: [view] diff --git a/metric-metadata/countconnector.yaml b/metric-metadata/countconnector.yaml index cdbafc0..f920399 100644 --- a/metric-metadata/countconnector.yaml +++ b/metric-metadata/countconnector.yaml @@ -1,3 +1,4 @@ +display_name: Count Connector type: count status: diff --git a/metric-metadata/cpuscraper.yaml b/metric-metadata/cpuscraper.yaml index 5dcee68..ebdf766 100644 --- a/metric-metadata/cpuscraper.yaml +++ b/metric-metadata/cpuscraper.yaml @@ -21,46 +21,51 @@ attributes: enum: [idle, interrupt, nice, softirq, steal, system, user, wait] metrics: - system.cpu.time: - enabled: true - description: Total seconds each logical CPU spent on each mode. - unit: s - sum: - value_type: double - aggregation_temporality: cumulative - monotonic: true - attributes: [cpu, state] - - system.cpu.utilization: + system.cpu.frequency: enabled: false - description: Difference in system.cpu.time since the last measurement per logical CPU, divided by the elapsed time (value in interval [0,1]). - unit: "1" + description: Current frequency of the CPU core in Hz. + unit: "Hz" + stability: development gauge: value_type: double - attributes: [cpu, state] + attributes: [cpu] - system.cpu.physical.count: + system.cpu.logical.count: enabled: false - description: Number of available physical CPUs. + description: Number of available logical CPUs. unit: "{cpu}" + stability: development sum: value_type: int monotonic: false aggregation_temporality: cumulative - system.cpu.logical.count: + system.cpu.physical.count: enabled: false - description: Number of available logical CPUs. + description: Number of available physical CPUs. unit: "{cpu}" + stability: development sum: value_type: int monotonic: false aggregation_temporality: cumulative - system.cpu.frequency: + system.cpu.time: + enabled: true + description: Total seconds each logical CPU spent on each mode. + unit: s + stability: development + sum: + value_type: double + aggregation_temporality: cumulative + monotonic: true + attributes: [cpu, state] + + system.cpu.utilization: enabled: false - description: Current frequency of the CPU core in Hz. - unit: "Hz" + description: Difference in system.cpu.time since the last measurement per logical CPU, divided by the elapsed time (value in interval [0,1]). + unit: "1" + stability: development gauge: value_type: double - attributes: [cpu] \ No newline at end of file + attributes: [cpu, state] diff --git a/metric-metadata/cumulativetodeltaprocessor.yaml b/metric-metadata/cumulativetodeltaprocessor.yaml index 070a6ec..7bce65c 100644 --- a/metric-metadata/cumulativetodeltaprocessor.yaml +++ b/metric-metadata/cumulativetodeltaprocessor.yaml @@ -1,5 +1,11 @@ +display_name: Cumulative to Delta Processor type: cumulativetodelta +description: | + The cumulative to delta processor (`cumulativetodeltaprocessor`) converts monotonic sum, histogram, and exponential + histogram metrics from cumulative to delta aggregation temporality. Non-monotonic sums are excluded. Delta metrics are + excluded from any conversion and forwarded without changes. + status: class: processor stability: diff --git a/metric-metadata/datadog.yaml b/metric-metadata/datadog.yaml index 868516b..60619db 100644 --- a/metric-metadata/datadog.yaml +++ b/metric-metadata/datadog.yaml @@ -1,4 +1,5 @@ status: disable_codecov_badge: true codeowners: - active: [mx-psi, dineshg13, liustanley, songy23, mackjmr, ankitpatel96, jade-guiton-dd, IbraheemA] + active: [mx-psi, dineshg13, liustanley, songy23, mackjmr, jade-guiton-dd, IbraheemA] + emeritus: [jackgopack4, ankitpatel96] diff --git a/metric-metadata/datadogconnector.yaml b/metric-metadata/datadogconnector.yaml index d5ead1e..3771bca 100644 --- a/metric-metadata/datadogconnector.yaml +++ b/metric-metadata/datadogconnector.yaml @@ -1,4 +1,5 @@ type: datadog +display_name: Datadog Connector status: class: connector @@ -6,8 +7,8 @@ status: beta: [traces_to_metrics, traces_to_traces] distributions: [contrib] codeowners: - active: [mx-psi, dineshg13, ankitpatel96, jade-guiton-dd, IbraheemA] - emeritus: [gbbr] + active: [mx-psi, dineshg13, jade-guiton-dd, IbraheemA] + emeritus: [gbbr, ankitpatel96] tests: goleak: diff --git a/metric-metadata/datadogexporter.yaml b/metric-metadata/datadogexporter.yaml index c4a966a..3be4a2d 100644 --- a/metric-metadata/datadogexporter.yaml +++ b/metric-metadata/datadogexporter.yaml @@ -1,4 +1,5 @@ type: datadog +display_name: Datadog Exporter status: class: exporter @@ -6,8 +7,8 @@ status: beta: [traces, metrics, logs] distributions: [contrib] codeowners: - active: [mx-psi, dineshg13, liustanley, songy23, mackjmr, ankitpatel96, jade-guiton-dd, IbraheemA] - emeritus: [gbbr] + active: [mx-psi, dineshg13, liustanley, songy23, mackjmr, jade-guiton-dd, IbraheemA] + emeritus: [gbbr, jackgopack4, ankitpatel96] tests: config: diff --git a/metric-metadata/datadogextension.yaml b/metric-metadata/datadogextension.yaml index 5f0e6f1..0246387 100644 --- a/metric-metadata/datadogextension.yaml +++ b/metric-metadata/datadogextension.yaml @@ -1,13 +1,20 @@ +display_name: Datadog Extension type: datadog status: class: extension stability: - development: [extension] - distributions: [] + alpha: [extension] + distributions: [contrib] codeowners: - active: [jackgopack4, dineshg13, mx-psi, songy23] + active: [dineshg13, IbraheemA, jade-guiton-dd, mx-psi, songy23] + emeritus: [jackgopack4, ankitpatel96] tests: goleak: skip: true + config: + api: + key: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + site: "datadoghq.com" + fail_on_invalid_key: false diff --git a/metric-metadata/datadogreceiver.yaml b/metric-metadata/datadogreceiver.yaml index da80f5f..f45097f 100644 --- a/metric-metadata/datadogreceiver.yaml +++ b/metric-metadata/datadogreceiver.yaml @@ -3,7 +3,7 @@ type: datadog status: class: receiver stability: - alpha: [traces, metrics] + alpha: [traces, metrics, logs] distributions: [contrib] codeowners: active: [boostchicken, gouthamve, MovieStoreGuy] diff --git a/metric-metadata/datadogsemanticsprocessor.yaml b/metric-metadata/datadogsemanticsprocessor.yaml index 332413c..0d41808 100644 --- a/metric-metadata/datadogsemanticsprocessor.yaml +++ b/metric-metadata/datadogsemanticsprocessor.yaml @@ -1,12 +1,18 @@ +display_name: Datadog Semantics Processor type: datadogsemantics status: class: processor stability: - development: [traces] - distributions: [contrib] + deprecated: [traces] + deprecation: + traces: + migration: "Please contact Datadog support if you need help: https://www.datadoghq.com/support/" + date: "2026-02-16" + distributions: [] codeowners: - active: [songy23, IbraheemA, mx-psi, dineshg13, ankitpatel96, jade-guiton-dd, jackgopack4] + active: [songy23, IbraheemA, mx-psi, dineshg13, jade-guiton-dd] + emeritus: [jackgopack4, ankitpatel96] tests: goleak: diff --git a/metric-metadata/datasetexporter.yaml b/metric-metadata/datasetexporter.yaml index f0f408f..db76c5b 100644 --- a/metric-metadata/datasetexporter.yaml +++ b/metric-metadata/datasetexporter.yaml @@ -1,4 +1,5 @@ type: dataset +display_name: DataSet Exporter status: class: exporter diff --git a/metric-metadata/dbstorage.yaml b/metric-metadata/dbstorage.yaml index e167261..1341346 100644 --- a/metric-metadata/dbstorage.yaml +++ b/metric-metadata/dbstorage.yaml @@ -1,5 +1,8 @@ +display_name: Database Storage Extension type: db_storage +description: The Database Storage Extension can persist state to a relational database. + status: class: extension stability: diff --git a/metric-metadata/deltatocumulativeprocessor.yaml b/metric-metadata/deltatocumulativeprocessor.yaml index 3269c0b..34df18b 100644 --- a/metric-metadata/deltatocumulativeprocessor.yaml +++ b/metric-metadata/deltatocumulativeprocessor.yaml @@ -1,5 +1,10 @@ +display_name: Delta to Cumulative Processor type: deltatocumulative +description: | + The Delta to Cumulative Processor (`deltatocumulativeprocessor`) converts metrics from delta temporality to + cumulative, by accumulating samples in memory. + status: class: processor stability: @@ -7,36 +12,41 @@ status: distributions: [contrib, k8s] warnings: [Statefulness] codeowners: - active: [sh0rez, RichieSams] + active: [RichieSams] + emeritus: [tombrk] telemetry: metrics: # streams - deltatocumulative_streams_tracked: - description: number of streams tracked - unit: "{dps}" + deltatocumulative_datapoints: + description: total number of datapoints processed. may have 'error' attribute, if processing failed + stability: development + unit: "{datapoint}" sum: value_type: int - monotonic: false - async: true + monotonic: true enabled: true deltatocumulative_streams_limit: description: upper limit of tracked streams + stability: development unit: "{stream}" gauge: value_type: int enabled: true deltatocumulative_streams_max_stale: description: duration after which streams inactive streams are dropped + stability: development unit: "s" gauge: value_type: int enabled: true # datapoints - deltatocumulative_datapoints: - description: total number of datapoints processed. may have 'error' attribute, if processing failed - unit: "{datapoint}" + deltatocumulative_streams_tracked: + description: number of streams tracked + stability: development + unit: "{dps}" sum: value_type: int - monotonic: true + monotonic: false + async: true enabled: true diff --git a/metric-metadata/deltatorateprocessor.yaml b/metric-metadata/deltatorateprocessor.yaml index 9edc398..b10930e 100644 --- a/metric-metadata/deltatorateprocessor.yaml +++ b/metric-metadata/deltatorateprocessor.yaml @@ -1,5 +1,9 @@ +display_name: Delta to Rate Processor type: deltatorate +description: | + The Delta to Rate Processor (`deltatorateprocessor`) converts delta sum metrics to rate metrics. This rate is a gauge. + status: class: processor stability: diff --git a/metric-metadata/digitalocean.yaml b/metric-metadata/digitalocean.yaml new file mode 100644 index 0000000..7d7c15a --- /dev/null +++ b/metric-metadata/digitalocean.yaml @@ -0,0 +1,30 @@ +type: digitaloceandetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [dashpole, paulojmdias] + +resource_attributes: + cloud.provider: + description: The cloud provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/diskscraper.yaml b/metric-metadata/diskscraper.yaml index 1439aa6..16224a7 100644 --- a/metric-metadata/diskscraper.yaml +++ b/metric-metadata/diskscraper.yaml @@ -25,15 +25,7 @@ metrics: enabled: true description: Disk bytes transferred. unit: By - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - attributes: [device, direction] - system.disk.operations: - enabled: true - description: Disk operations count. - unit: "{operations}" + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -44,45 +36,60 @@ metrics: enabled: true description: Time disk spent activated. On Windows, this is calculated as the inverse of disk idle time. unit: s + stability: development sum: value_type: double aggregation_temporality: cumulative monotonic: true attributes: [device] + system.disk.merged: + enabled: true + description: The number of disk reads/writes merged into single physical disk access operations. + unit: "{operations}" + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + attributes: [device, direction] system.disk.operation_time: enabled: true description: Time spent in disk operations. unit: s + stability: development sum: value_type: double aggregation_temporality: cumulative monotonic: true attributes: [device, direction] - system.disk.weighted_io_time: + system.disk.operations: enabled: true - description: Time disk spent activated multiplied by the queue length. - unit: s + description: Disk operations count. + unit: "{operations}" + stability: development sum: - value_type: double + value_type: int aggregation_temporality: cumulative monotonic: true - attributes: [device] + attributes: [device, direction] system.disk.pending_operations: enabled: true description: The queue size of pending I/O operations. unit: "{operations}" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false attributes: [device] - system.disk.merged: + system.disk.weighted_io_time: enabled: true - description: The number of disk reads/writes merged into single physical disk access operations. - unit: "{operations}" + description: Time disk spent activated multiplied by the queue length. + unit: s + stability: development sum: - value_type: int + value_type: double aggregation_temporality: cumulative monotonic: true - attributes: [device, direction] + attributes: [device] diff --git a/metric-metadata/dnslookupprocessor.yaml b/metric-metadata/dnslookupprocessor.yaml index d728475..e3f62f6 100644 --- a/metric-metadata/dnslookupprocessor.yaml +++ b/metric-metadata/dnslookupprocessor.yaml @@ -1,3 +1,4 @@ +display_name: DNS Lookup Processor type: dnslookup status: diff --git a/metric-metadata/docker.yaml b/metric-metadata/docker.yaml index b9accae..e15df04 100644 --- a/metric-metadata/docker.yaml +++ b/metric-metadata/docker.yaml @@ -3,6 +3,14 @@ type: resourcedetectionprocessor/docker parent: resourcedetection resource_attributes: + container.image.name: + description: The container image name + type: string + enabled: false + container.name: + description: The container name + type: string + enabled: false host.name: description: The host.name type: string diff --git a/metric-metadata/dockerobserver.yaml b/metric-metadata/dockerobserver.yaml index ddacb28..56f0aab 100644 --- a/metric-metadata/dockerobserver.yaml +++ b/metric-metadata/dockerobserver.yaml @@ -1,3 +1,4 @@ +display_name: Docker Observer Extension type: docker_observer status: diff --git a/metric-metadata/dockerstatsreceiver.yaml b/metric-metadata/dockerstatsreceiver.yaml index 06db7f4..bee2a04 100644 --- a/metric-metadata/dockerstatsreceiver.yaml +++ b/metric-metadata/dockerstatsreceiver.yaml @@ -10,7 +10,7 @@ status: emeritus: [rmfitzpatrick] unsupported_platforms: [darwin, windows] -sem_conv_version: 1.27.0 +sem_conv_version: 1.38.0 tests: goleak: @@ -22,14 +22,22 @@ tests: # Note: there are other, additional resource attributes that the user can configure through the yaml resource_attributes: - container.runtime: - description: "The runtime of the container. For this receiver, it will always be 'docker'." + container.command_line: + description: "The full command executed by the container." + type: string + enabled: false + container.hostname: + description: "The hostname of the container." type: string enabled: true container.id: description: "The ID of the container." type: string enabled: true + container.image.id: + description: "The ID of the container image." + type: string + enabled: false container.image.name: description: "The name of the docker image in use by the container." type: string @@ -38,18 +46,10 @@ resource_attributes: description: "The name of the container." type: string enabled: true - container.hostname: - description: "The hostname of the container." + container.runtime: + description: "The runtime of the container. For this receiver, it will always be 'docker'." type: string enabled: true - container.image.id: - description: "The ID of the container image." - type: string - enabled: false - container.command_line: - description: "The full command executed by the container." - type: string - enabled: false attributes: core: @@ -70,55 +70,149 @@ attributes: metrics: # CPU - container.cpu.usage.system: + container.blockio.io_merged_recursive: enabled: false - description: "System CPU usage, as reported by docker." - extended_documentation: "Note this is the usage for the system, not the container." - unit: ns + stability: development + description: "Number of bios/requests merged into requests belonging to this cgroup and its descendant cgroups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + unit: "{operations}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - container.cpu.usage.total: - enabled: true - description: "Total CPU time consumed." - unit: ns + attributes: + - device_major + - device_minor + - operation + container.blockio.io_queued_recursive: + enabled: false + stability: development + description: "Number of requests queued up for this cgroup and its descendant cgroups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + unit: "{operations}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - container.cpu.usage.kernelmode: + attributes: + - device_major + - device_minor + - operation + container.blockio.io_service_bytes_recursive: enabled: true - description: >- - Time spent by tasks of the cgroup in kernel mode (Linux). - Time spent by all container processes in kernel mode (Windows). - unit: ns + stability: development + description: "Number of bytes transferred to/from the disk by the group and descendant groups." + extended_documentation: >- + More docs + for [cgroups v1](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt) + and [cgroups v2](https://www.kernel.org/doc/Documentation/cgroup-v2.txt) + unit: By sum: value_type: int monotonic: true aggregation_temporality: cumulative - container.cpu.usage.usermode: - enabled: true - description: >- - Time spent by tasks of the cgroup in user mode (Linux). - Time spent by all container processes in user mode (Windows). + attributes: + - device_major + - device_minor + - operation + container.blockio.io_service_time_recursive: + enabled: false + stability: development + description: "Total amount of time in nanoseconds between request dispatch and request completion for the IOs done by this cgroup and descendant cgroups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." unit: ns sum: value_type: int monotonic: true aggregation_temporality: cumulative - container.cpu.usage.percpu: + attributes: + - device_major + - device_minor + - operation + container.blockio.io_serviced_recursive: enabled: false - description: "Per-core CPU usage by the container (Only available with cgroups v1)." + stability: development + description: "Number of IOs (bio) issued to the disk by the group and descendant groups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + unit: "{operations}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: + - device_major + - device_minor + - operation + container.blockio.io_time_recursive: + enabled: false + stability: development + description: "Disk time allocated to cgroup (and descendant cgroups) per device in milliseconds (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + unit: ms + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: + - device_major + - device_minor + - operation + container.blockio.io_wait_time_recursive: + enabled: false + stability: development + description: "Total amount of time the IOs for this cgroup (and descendant cgroups) spent waiting in the scheduler queues for service (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." unit: ns sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: - - core + - device_major + - device_minor + - operation + container.blockio.sectors_recursive: + enabled: false + stability: development + description: "Number of sectors transferred to/from disk by the group and descendant groups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + unit: "{sectors}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: + - device_major + - device_minor + - operation + # Network + container.cpu.limit: + enabled: false + stability: development + description: "CPU limit set for the container." + extended_documentation: "This metric is only reported if the container has limits set with -cpus, -cpuset-cpus or -cpu-quota." + unit: "{cpus}" + gauge: + value_type: double + container.cpu.logical.count: + enabled: false + stability: development + description: "Number of cores available to the container." + unit: "{cpus}" + gauge: + value_type: int + + # Memory + container.cpu.shares: + enabled: false + stability: development + description: "CPU shares set for the container." + unit: "1" + gauge: + value_type: int container.cpu.throttling_data.periods: enabled: false + stability: development description: "Number of periods with throttling active." unit: "{periods}" sum: @@ -127,6 +221,7 @@ metrics: aggregation_temporality: cumulative container.cpu.throttling_data.throttled_periods: enabled: false + stability: development description: "Number of periods when the container hits its throttling limit." unit: "{periods}" sum: @@ -135,138 +230,195 @@ metrics: aggregation_temporality: cumulative container.cpu.throttling_data.throttled_time: enabled: false + stability: development description: "Aggregate time the container was throttled." unit: ns sum: value_type: int monotonic: true aggregation_temporality: cumulative + container.cpu.usage.kernelmode: + enabled: true + stability: development + description: >- + Time spent by tasks of the cgroup in kernel mode (Linux). Time spent by all container processes in kernel mode (Windows). + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + container.cpu.usage.percpu: + enabled: false + stability: development + description: "Per-core CPU usage by the container (Only available with cgroups v1)." + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: + - core + container.cpu.usage.system: + enabled: false + stability: development + description: "System CPU usage, as reported by docker." + extended_documentation: "Note this is the usage for the system, not the container." + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + container.cpu.usage.total: + enabled: true + stability: development + description: "Total CPU time consumed." + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + container.cpu.usage.usermode: + enabled: true + stability: development + description: >- + Time spent by tasks of the cgroup in user mode (Linux). Time spent by all container processes in user mode (Windows). + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative container.cpu.utilization: enabled: true + stability: development description: "Percent of CPU used by the container." unit: "1" gauge: value_type: double - container.cpu.limit: - enabled: false - description: "CPU limit set for the container." - extended_documentation: "This metric is only reported if the container has limits set with -cpus, -cpuset-cpus or -cpu-quota." - unit: "{cpus}" - gauge: - value_type: double - container.cpu.shares: - enabled: false - description: "CPU shares set for the container." - unit: "1" - gauge: - value_type: int - container.cpu.logical.count: + container.memory.active_anon: enabled: false - description: "Number of cores available to the container." - unit: "{cpus}" - gauge: - value_type: int - - - # Memory - container.memory.usage.limit: - enabled: true - description: "Memory limit of the container." + stability: development + description: "The amount of anonymous memory that has been identified as active by the kernel." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.usage.total: - enabled: true - description: "Memory usage of the container. This excludes the cache." + container.memory.active_file: + enabled: false + stability: development + description: "Cache memory that has been identified as active by the kernel." + extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)" unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.usage.max: + container.memory.anon: enabled: false - description: "Maximum memory usage." + stability: development + description: "Amount of memory used in anonymous mappings such as brk(), sbrk(), and mmap(MAP_ANONYMOUS) (Only available with cgroups v2)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v2.txt)" unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.percent: - enabled: true - description: "Percentage of memory used." - unit: "1" - gauge: - value_type: double container.memory.cache: enabled: false + stability: development description: "The amount of memory used by the processes of this control group that can be associated precisely with a block on a block device (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.rss: + container.memory.dirty: enabled: false - description: "The amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps (Only available with cgroups v1)." + stability: development + description: "Bytes that are waiting to get written back to the disk, from this cgroup (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.rss_huge: + container.memory.fails: enabled: false - description: "Number of bytes of anonymous transparent hugepages in this cgroup (Only available with cgroups v1)." + stability: development + description: "Number of times the memory limit was hit." + unit: "{fails}" + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + + + # BlockIO (cgroup v1) and IO (cgroup v2) controllers + container.memory.file: + enabled: true + stability: development + description: "Amount of memory used to cache filesystem data, including tmpfs and shared memory (Only available with cgroups v2)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v2.txt)" unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.dirty: + container.memory.hierarchical_memory_limit: enabled: false - description: "Bytes that are waiting to get written back to the disk, from this cgroup (Only available with cgroups v1)." + stability: development + description: "The maximum amount of physical memory that can be used by the processes of this control group (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.writeback: + container.memory.hierarchical_memsw_limit: enabled: false - description: "Number of bytes of file/anon cache that are queued for syncing to disk in this cgroup (Only available with cgroups v1)." + stability: development + description: "The maximum amount of RAM + swap that can be used by the processes of this control group (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.mapped_file: + container.memory.inactive_anon: enabled: false - description: "Indicates the amount of memory mapped by the processes in the control group (Only available with cgroups v1)." + stability: development + description: "The amount of anonymous memory that has been identified as inactive by the kernel." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.pgpgin: + container.memory.inactive_file: enabled: false - description: "Number of pages read from disk by the cgroup (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt)." - unit: "{operations}" + stability: development + description: "Cache memory that has been identified as inactive by the kernel." + extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)" + unit: By sum: value_type: int aggregation_temporality: cumulative - monotonic: true - container.memory.pgpgout: + monotonic: false + container.memory.mapped_file: enabled: false - description: "Number of pages written to disk by the cgroup (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt)." - unit: "{operations}" + stability: development + description: "Indicates the amount of memory mapped by the processes in the control group (Only available with cgroups v1)." + unit: By sum: value_type: int aggregation_temporality: cumulative - monotonic: true + monotonic: false + container.memory.percent: + enabled: true + stability: development + description: "Percentage of memory used. Not supported on Windows." + unit: "1" + gauge: + value_type: double container.memory.pgfault: enabled: false + stability: development description: "Indicate the number of times that a process of the cgroup triggered a page fault." unit: "{faults}" sum: @@ -275,65 +427,65 @@ metrics: monotonic: true container.memory.pgmajfault: enabled: false + stability: development description: "Indicate the number of times that a process of the cgroup triggered a major fault." unit: "{faults}" sum: value_type: int aggregation_temporality: cumulative monotonic: true - container.memory.inactive_anon: - enabled: false - description: "The amount of anonymous memory that has been identified as inactive by the kernel." - unit: By - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - container.memory.active_anon: + container.memory.pgpgin: enabled: false - description: "The amount of anonymous memory that has been identified as active by the kernel." - unit: By + stability: development + description: "Number of pages read from disk by the cgroup (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt)." + unit: "{operations}" sum: value_type: int aggregation_temporality: cumulative - monotonic: false - container.memory.inactive_file: + monotonic: true + container.memory.pgpgout: enabled: false - description: "Cache memory that has been identified as inactive by the kernel." - extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)" - unit: By + stability: development + description: "Number of pages written to disk by the cgroup (Only available with cgroups v1)." + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt)." + unit: "{operations}" sum: value_type: int aggregation_temporality: cumulative - monotonic: false - container.memory.active_file: + monotonic: true + container.memory.rss: enabled: false - description: "Cache memory that has been identified as active by the kernel." - extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)" + stability: development + description: "The amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.unevictable: + container.memory.rss_huge: enabled: false - description: "The amount of memory that cannot be reclaimed." + stability: development + description: "Number of bytes of anonymous transparent hugepages in this cgroup (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.hierarchical_memory_limit: + container.memory.total_active_anon: enabled: false - description: "The maximum amount of physical memory that can be used by the processes of this control group (Only available with cgroups v1)." + stability: development + description: "The amount of anonymous memory that has been identified as active by the kernel. Includes descendant cgroups (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.hierarchical_memsw_limit: + container.memory.total_active_file: enabled: false - description: "The maximum amount of RAM + swap that can be used by the processes of this control group (Only available with cgroups v1)." + stability: development + description: "Cache memory that has been identified as active by the kernel. Includes descendant cgroups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)." unit: By sum: value_type: int @@ -341,39 +493,36 @@ metrics: monotonic: false container.memory.total_cache: enabled: true - description: "Total amount of memory used by the processes of this cgroup (and descendants) that can be associated with a block on a block device. Also accounts for memory used by tmpfs (Only available with cgroups v1)." - unit: By - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - container.memory.total_rss: - enabled: false - description: "The amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps. Includes descendant cgroups (Only available with cgroups v1)." + stability: development + description: "Total amount of memory used by the processes of this cgroup (and descendants) that can be associated with a block on a block device. Also accounts for memory used by tmpfs (Only available with cgroups v1). Not supported on Windows." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.total_rss_huge: + container.memory.total_dirty: enabled: false - description: "Number of bytes of anonymous transparent hugepages in this cgroup and descendant cgroups (Only available with cgroups v1)." + stability: development + description: "Bytes that are waiting to get written back to the disk, from this cgroup and descendants (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.total_dirty: + container.memory.total_inactive_anon: enabled: false - description: "Bytes that are waiting to get written back to the disk, from this cgroup and descendants (Only available with cgroups v1)." + stability: development + description: "The amount of anonymous memory that has been identified as inactive by the kernel. Includes descendant cgroups (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.total_writeback: + container.memory.total_inactive_file: enabled: false - description: "Number of bytes of file/anon cache that are queued for syncing to disk in this cgroup and descendants (Only available with cgroups v1)." + stability: development + description: "Cache memory that has been identified as inactive by the kernel. Includes descendant cgroups (Only available with cgroups v1)." + extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)." unit: By sum: value_type: int @@ -381,30 +530,16 @@ metrics: monotonic: false container.memory.total_mapped_file: enabled: false + stability: development description: "Indicates the amount of memory mapped by the processes in the control group and descendant groups (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.total_pgpgin: - enabled: false - description: "Number of pages read from disk by the cgroup and descendant groups (Only available with cgroups v1)." - unit: "{operations}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - container.memory.total_pgpgout: - enabled: false - description: "Number of pages written to disk by the cgroup and descendant groups (Only available with cgroups v1)." - unit: "{operations}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true container.memory.total_pgfault: enabled: false + stability: development description: "Indicate the number of times that a process of the cgroup (or descendant cgroups) triggered a page fault (Only available with cgroups v1)." unit: "{faults}" sum: @@ -413,41 +548,44 @@ metrics: monotonic: true container.memory.total_pgmajfault: enabled: false + stability: development description: "Indicate the number of times that a process of the cgroup (or descendant cgroups) triggered a major fault (Only available with cgroups v1)." unit: "{faults}" sum: value_type: int aggregation_temporality: cumulative monotonic: true - container.memory.total_inactive_anon: + container.memory.total_pgpgin: enabled: false - description: "The amount of anonymous memory that has been identified as inactive by the kernel. Includes descendant cgroups (Only available with cgroups v1)." - unit: By + stability: development + description: "Number of pages read from disk by the cgroup and descendant groups (Only available with cgroups v1)." + unit: "{operations}" sum: value_type: int aggregation_temporality: cumulative - monotonic: false - container.memory.total_active_anon: + monotonic: true + container.memory.total_pgpgout: enabled: false - description: "The amount of anonymous memory that has been identified as active by the kernel. Includes descendant cgroups (Only available with cgroups v1)." - unit: By + stability: development + description: "Number of pages written to disk by the cgroup and descendant groups (Only available with cgroups v1)." + unit: "{operations}" sum: value_type: int aggregation_temporality: cumulative - monotonic: false - container.memory.total_inactive_file: + monotonic: true + container.memory.total_rss: enabled: false - description: "Cache memory that has been identified as inactive by the kernel. Includes descendant cgroups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)." + stability: development + description: "The amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps. Includes descendant cgroups (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.total_active_file: + container.memory.total_rss_huge: enabled: false - description: "Cache memory that has been identified as active by the kernel. Includes descendant cgroups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://docs.docker.com/config/containers/runmetrics/)." + stability: development + description: "Number of bytes of anonymous transparent hugepages in this cgroup and descendant cgroups (Only available with cgroups v1)." unit: By sum: value_type: int @@ -455,154 +593,105 @@ metrics: monotonic: false container.memory.total_unevictable: enabled: false + stability: development description: "The amount of memory that cannot be reclaimed. Includes descendant cgroups (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.anon: + container.memory.total_writeback: enabled: false - description: "Amount of memory used in anonymous mappings such as brk(), sbrk(), and mmap(MAP_ANONYMOUS) (Only available with cgroups v2)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v2.txt)" + stability: development + description: "Number of bytes of file/anon cache that are queued for syncing to disk in this cgroup and descendants (Only available with cgroups v1)." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.file: - enabled: true - description: "Amount of memory used to cache filesystem data, including tmpfs and shared memory (Only available with cgroups v2)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v2.txt)" + container.memory.unevictable: + enabled: false + stability: development + description: "The amount of memory that cannot be reclaimed." unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.fails: - enabled: false - description: "Number of times the memory limit was hit." - unit: "{fails}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - - - # BlockIO (cgroup v1) and IO (cgroup v2) controllers - container.blockio.io_merged_recursive: - enabled: false - description: "Number of bios/requests merged into requests belonging to this cgroup and its descendant cgroups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{operations}" + container.memory.usage.limit: + enabled: true + stability: development + description: "Memory limit of the container. Not supported on Windows." + unit: By sum: value_type: int - monotonic: true aggregation_temporality: cumulative - attributes: - - device_major - - device_minor - - operation - container.blockio.io_queued_recursive: + monotonic: false + container.memory.usage.max: enabled: false - description: "Number of requests queued up for this cgroup and its descendant cgroups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{operations}" + stability: development + description: "Maximum memory usage." + unit: By sum: value_type: int - monotonic: true aggregation_temporality: cumulative - attributes: - - device_major - - device_minor - - operation - container.blockio.io_service_bytes_recursive: + monotonic: false + container.memory.usage.total: enabled: true - description: "Number of bytes transferred to/from the disk by the group and descendant groups." - extended_documentation: >- - More docs - for [cgroups v1](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt) - and [cgroups v2](https://www.kernel.org/doc/Documentation/cgroup-v2.txt) + stability: development + description: "Memory usage of the container. This excludes the cache." unit: By sum: value_type: int - monotonic: true aggregation_temporality: cumulative - attributes: - - device_major - - device_minor - - operation - container.blockio.io_service_time_recursive: + monotonic: false + container.memory.writeback: enabled: false - description: "Total amount of time in nanoseconds between request dispatch and request completion for the IOs done by this cgroup and descendant cgroups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: ns + stability: development + description: "Number of bytes of file/anon cache that are queued for syncing to disk in this cgroup (Only available with cgroups v1)." + unit: By sum: value_type: int - monotonic: true aggregation_temporality: cumulative - attributes: - - device_major - - device_minor - - operation - container.blockio.io_serviced_recursive: - enabled: false - description: "Number of IOs (bio) issued to the disk by the group and descendant groups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{operations}" + monotonic: false + container.network.io.usage.rx_bytes: + enabled: true + stability: development + description: "Bytes received by the container." + unit: By sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: - - device_major - - device_minor - - operation - container.blockio.io_time_recursive: - enabled: false - description: "Disk time allocated to cgroup (and descendant cgroups) per device in milliseconds (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: ms + - interface + container.network.io.usage.rx_dropped: + enabled: true + stability: development + description: "Incoming packets dropped." + unit: "{packets}" sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: - - device_major - - device_minor - - operation - container.blockio.io_wait_time_recursive: + - interface + container.network.io.usage.rx_errors: enabled: false - description: "Total amount of time the IOs for this cgroup (and descendant cgroups) spent waiting in the scheduler queues for service (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: ns + stability: development + description: "Received errors. Not supported on Windows." + unit: "{errors}" sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: - - device_major - - device_minor - - operation - container.blockio.sectors_recursive: + - interface + container.network.io.usage.rx_packets: enabled: false - description: "Number of sectors transferred to/from disk by the group and descendant groups (Only available with cgroups v1)." - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{sectors}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: - - device_major - - device_minor - - operation - - # Network - container.network.io.usage.rx_bytes: - enabled: true - description: "Bytes received by the container." - unit: By + stability: development + description: "Packets received." + unit: "{packets}" sum: value_type: int monotonic: true @@ -611,6 +700,7 @@ metrics: - interface container.network.io.usage.tx_bytes: enabled: true + stability: development description: "Bytes sent." unit: By sum: @@ -619,18 +709,9 @@ metrics: aggregation_temporality: cumulative attributes: - interface - container.network.io.usage.rx_dropped: - enabled: true - description: "Incoming packets dropped." - unit: "{packets}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: - - interface container.network.io.usage.tx_dropped: enabled: true + stability: development description: "Outgoing packets dropped." unit: "{packets}" sum: @@ -639,19 +720,10 @@ metrics: aggregation_temporality: cumulative attributes: - interface - container.network.io.usage.rx_errors: - enabled: false - description: "Received errors." - unit: "{errors}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: - - interface container.network.io.usage.tx_errors: enabled: false - description: "Sent errors." + stability: development + description: "Sent errors. Not supported on Windows." unit: "{errors}" sum: value_type: int @@ -659,18 +731,9 @@ metrics: aggregation_temporality: cumulative attributes: - interface - container.network.io.usage.rx_packets: - enabled: false - description: "Packets received." - unit: "{packets}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: - - interface container.network.io.usage.tx_packets: enabled: false + stability: development description: "Packets sent." unit: "{packets}" sum: @@ -683,6 +746,7 @@ metrics: # Pids container.pids.count: enabled: false + stability: development description: "Number of pids in the container's cgroup." extended_documentation: "It requires docker API 1.23 or higher and kernel version >= 4.3 with pids cgroup supported. [More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/pids.txt)" unit: "{pids}" @@ -693,6 +757,7 @@ metrics: container.pids.limit: enabled: false + stability: development description: "Maximum number of pids in the container's cgroup." extended_documentation: "It requires docker API 1.23 or higher and kernel version >= 4.3 with pids cgroup supported. [More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/pids.txt)" unit: "{pids}" @@ -701,20 +766,22 @@ metrics: aggregation_temporality: cumulative monotonic: false - # Base - container.uptime: - enabled: false - description: "Time elapsed since container start time." - unit: s - gauge: - value_type: double - # Container container.restarts: enabled: false + stability: development description: "Number of restarts for the container." unit: "{restarts}" sum: value_type: int monotonic: true aggregation_temporality: cumulative + + # Base + container.uptime: + enabled: false + stability: development + description: "Time elapsed since container start time." + unit: s + gauge: + value_type: double diff --git a/metric-metadata/dorisexporter.yaml b/metric-metadata/dorisexporter.yaml index 6c1a7ec..42446b3 100644 --- a/metric-metadata/dorisexporter.yaml +++ b/metric-metadata/dorisexporter.yaml @@ -1,5 +1,6 @@ type: doris scope_name: otelcol/doris +display_name: Apache Doris Exporter status: class: exporter diff --git a/metric-metadata/e2e.yaml b/metric-metadata/e2e.yaml new file mode 100644 index 0000000..03bd298 --- /dev/null +++ b/metric-metadata/e2e.yaml @@ -0,0 +1,5 @@ +status: + disable_codecov_badge: true + codeowners: + active: [mx-psi, dineshg13, liustanley, songy23, mackjmr, jade-guiton-dd, IbraheemA] + emeritus: [ankitpatel96] diff --git a/metric-metadata/ec2.yaml b/metric-metadata/ec2.yaml index d03e83b..1f981a9 100644 --- a/metric-metadata/ec2.yaml +++ b/metric-metadata/ec2.yaml @@ -3,40 +3,40 @@ type: resourcedetectionprocessor/ec2 parent: resourcedetection resource_attributes: - host.name: - description: The hostname - type: string - enabled: true - host.id: - description: The host.id - type: string - enabled: true - cloud.provider: - description: The cloud provider - type: string - enabled: true cloud.account.id: description: The cloud account id type: string enabled: true + cloud.availability_zone: + description: The cloud availability zone + type: string + enabled: true cloud.platform: description: The cloud platform type: string enabled: true + cloud.provider: + description: The cloud provider + type: string + enabled: true cloud.region: description: The cloud region type: string enabled: true - cloud.availability_zone: - description: The cloud availability zone + host.id: + description: The host.id type: string enabled: true host.image.id: description: The host image id type: string enabled: true + host.name: + description: The hostname + type: string + enabled: true host.type: - description: The host id + description: The host instance type type: string enabled: true diff --git a/metric-metadata/ecs.yaml b/metric-metadata/ecs.yaml index 69c73dc..d334b56 100644 --- a/metric-metadata/ecs.yaml +++ b/metric-metadata/ecs.yaml @@ -1,67 +1,48 @@ -type: resourcedetectionprocessor/ecs +type: alibabaecsdetector -parent: resourcedetection +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [dashpole, paulojmdias] resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true - cloud.platform: - description: The cloud.platform - type: string - enabled: true cloud.account.id: - description: The cloud.account.id - type: string - enabled: true - cloud.region: - description: The cloud.region + description: The cloud account ID (Alibaba Cloud owner account ID) type: string enabled: true cloud.availability_zone: - description: The cloud.availability_zone + description: The cloud availability zone (zone ID) type: string enabled: true - aws.ecs.cluster.arn: - description: The aws.ecs.cluster.arn + cloud.platform: + description: The cloud platform type: string enabled: true - aws.ecs.task.arn: - description: The aws.ecs.task.arn + cloud.provider: + description: The cloud provider type: string enabled: true - aws.ecs.task.family: - description: The aws.ecs.task.family + cloud.region: + description: The cloud region type: string enabled: true - aws.ecs.task.id: - description: The aws.ecs.task.id + host.id: + description: The host ID (instance ID) type: string enabled: true - aws.ecs.task.revision: - description: The aws.ecs.task.revision + host.image.id: + description: The host image ID type: string enabled: true - aws.ecs.launchtype: - description: The aws.ecs.launchtype + host.name: + description: The hostname type: string enabled: true - aws.log.group.names: - description: The aws.log.group.names - type: slice - enabled: true - aws.log.group.arns: - description: The aws.log.group.arns - type: slice - enabled: true - aws.log.stream.names: - description: The aws.log.stream.names - type: slice - enabled: true - aws.log.stream.arns: - description: The aws.log.stream.arns - type: slice + host.type: + description: The host instance type + type: string enabled: true tests: diff --git a/metric-metadata/ecsobserver.yaml b/metric-metadata/ecsobserver.yaml index e99b78c..763293c 100644 --- a/metric-metadata/ecsobserver.yaml +++ b/metric-metadata/ecsobserver.yaml @@ -1,3 +1,4 @@ +display_name: Amazon Elastic Container Service Observer type: ecs_observer status: diff --git a/metric-metadata/eks.yaml b/metric-metadata/eks.yaml index dc2a0cb..af66237 100644 --- a/metric-metadata/eks.yaml +++ b/metric-metadata/eks.yaml @@ -3,28 +3,24 @@ type: resourcedetectionprocessor/eks parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true - cloud.platform: - description: The cloud.platform - type: string - enabled: true cloud.account.id: description: The cloud account id type: string enabled: false - cloud.region: - description: The cloud region - type: string - enabled: false cloud.availability_zone: description: The cloud availability zone type: string enabled: false - host.name: - description: The hostname + cloud.platform: + description: The cloud.platform + type: string + enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true + cloud.region: + description: The cloud region type: string enabled: false host.id: @@ -35,6 +31,10 @@ resource_attributes: description: The host image id type: string enabled: false + host.name: + description: The hostname + type: string + enabled: false host.type: description: The host id type: string diff --git a/metric-metadata/elasticbeanstalk.yaml b/metric-metadata/elasticbeanstalk.yaml index 1c0b852..7177af4 100644 --- a/metric-metadata/elasticbeanstalk.yaml +++ b/metric-metadata/elasticbeanstalk.yaml @@ -3,14 +3,14 @@ type: resourcedetectionprocessor/elastic_beanstalk parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true cloud.platform: description: The cloud.platform type: string enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true deployment.environment: description: The deployment.environment type: string diff --git a/metric-metadata/elasticsearchexporter.yaml b/metric-metadata/elasticsearchexporter.yaml index 71b7be9..7d71d66 100644 --- a/metric-metadata/elasticsearchexporter.yaml +++ b/metric-metadata/elasticsearchexporter.yaml @@ -1,4 +1,5 @@ type: elasticsearch +display_name: Elasticsearch Exporter status: class: exporter @@ -9,6 +10,92 @@ status: codeowners: active: [JaredTan95, carsonip, lahsivjar] +attributes: + error.type: + description: The type of error that occurred when processing the documents. + type: string + failure_store: + description: The status of the failure store. + type: string + enum: [unknown, not_enabled, used, failed] + http.response.status_code: + description: HTTP status code. + type: int + outcome: + description: The operation outcome. + type: string + enum: [success, failed_client, failed_server, timeout, too_many, failure_store, internal_server_error] + +telemetry: + metrics: + elasticsearch.bulk_requests.count: + prefix: otelcol. + stability: alpha + enabled: true + description: Count of the completed bulk requests. + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [outcome, http.response.status_code] + elasticsearch.bulk_requests.latency: + prefix: otelcol. + stability: alpha + enabled: true + description: Latency of Elasticsearch bulk operations in seconds. + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] + attributes: [outcome, http.response.status_code] + elasticsearch.docs.processed: + prefix: otelcol. + stability: alpha + enabled: true + description: Count of documents flushed to Elasticsearch. + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [outcome, http.response.status_code, failure_store, error.type] + elasticsearch.docs.received: + prefix: otelcol. + stability: alpha + enabled: true + description: Count of Elasticsearch documents successfully received to be buffered. + unit: "1" + sum: + value_type: int + monotonic: true + elasticsearch.docs.retried: + prefix: otelcol. + stability: alpha + enabled: true + description: Count of document retries. + extended_documentation: Only document level retries are captured, whole bulk request retries are not captured. + unit: "1" + sum: + value_type: int + monotonic: true + elasticsearch.flushed.bytes: + prefix: otelcol. + stability: alpha + enabled: true + description: Number of bytes flushed by the indexer. + unit: By + sum: + value_type: int + monotonic: true + elasticsearch.flushed.uncompressed_bytes: + prefix: otelcol. + stability: alpha + enabled: true + description: Number of uncompressed bytes flushed by the indexer. + unit: By + sum: + value_type: int + monotonic: true + tests: config: endpoints: [http://localhost:9200] diff --git a/metric-metadata/elasticsearchreceiver.yaml b/metric-metadata/elasticsearchreceiver.yaml index e5ee39e..662eddd 100644 --- a/metric-metadata/elasticsearchreceiver.yaml +++ b/metric-metadata/elasticsearchreceiver.yaml @@ -15,6 +15,10 @@ resource_attributes: description: The name of the elasticsearch cluster. type: string enabled: true + elasticsearch.index.name: + description: The name of the elasticsearch index. + type: string + enabled: true elasticsearch.node.name: description: The name of the elasticsearch node. type: string @@ -23,102 +27,18 @@ resource_attributes: description: The version of the elasticsearch node. type: string enabled: true - elasticsearch.index.name: - description: The name of the elasticsearch index. - type: string - enabled: true attributes: cache_name: description: The name of cache. type: string enum: - - fielddata - - query - collector_name: - name_override: name - description: The name of the garbage collector. - type: string - memory_pool_name: - name_override: name - description: The name of the JVM memory pool. - type: string - direction: - description: The direction of network data. - type: string - enum: - - received - - sent - document_state: - name_override: state - description: The state of the document. - type: string - enum: - - active - - deleted - shard_state: - name_override: state - description: The state of the shard. - type: string - enum: - - active - - active_primary - - relocating - - initializing - - unassigned - - unassigned_delayed - operation: - name_override: operation - description: The type of operation. - type: string - enum: - - index - - delete - - get - - query - - fetch - - scroll - - suggest - - merge - - refresh - - flush - - warmer - thread_pool_name: - description: The name of the thread pool. - type: string - thread_state: - name_override: state - description: The state of the thread. - type: string - enum: - - active - - idle - task_state: - name_override: state - description: The state of the task. - type: string - enum: - - rejected - - completed - health_status: - name_override: status - description: The health status of the cluster. - type: string - enum: - - green - - yellow - - red + - fielddata + - query circuit_breaker_name: name_override: name description: The name of circuit breaker. type: string - memory_state: - name_override: state - description: State of the memory - type: string - enum: - - free - - used cluster_published_difference_state: name_override: state description: State of the published differences @@ -133,14 +53,6 @@ attributes: enum: - pending - committed - indexing_pressure_stage: - name_override: stage - description: Stage of the indexing pressure - type: string - enum: - - coordinating - - primary - - replica cluster_state_update_state: name_override: state description: State of cluster state update @@ -156,17 +68,39 @@ attributes: - completion - master_apply - notification - ingest_pipeline_name: + collector_name: name_override: name - description: Name of the ingest pipeline. + description: The name of the garbage collector. type: string - query_cache_count_type: - name_override: type - description: Type of query cache count + direction: + description: The direction of network data. + type: string + enum: + - received + - sent + document_state: + name_override: state + description: The state of the document. + type: string + enum: + - active + - deleted + get_result: + name_override: result + description: Result of get operation type: string enum: - hit - miss + + health_status: + name_override: status + description: The health status of the cluster. + type: string + enum: + - green + - yellow + - red index_aggregation_type: name_override: aggregation description: Type of shard aggregation for index statistics @@ -174,6 +108,52 @@ attributes: enum: - primary_shards - total + indexing_pressure_stage: + name_override: stage + description: Stage of the indexing pressure + type: string + enum: + - coordinating + - primary + - replica + ingest_pipeline_name: + name_override: name + description: Name of the ingest pipeline. + type: string + memory_pool_name: + name_override: name + description: The name of the JVM memory pool. + type: string + memory_state: + name_override: state + description: State of the memory + type: string + enum: + - free + - used + operation: + name_override: operation + description: The type of operation. + type: string + enum: + - index + - delete + - get + - query + - fetch + - scroll + - suggest + - merge + - refresh + - flush + - warmer + query_cache_count_type: + name_override: type + description: Type of query cache count + type: string + enum: + - hit + - miss segments_memory_object_type: name_override: object description: Type of object in segment @@ -183,18 +163,39 @@ attributes: - doc_value - index_writer - fixed_bit_set - get_result: - name_override: result - description: Result of get operation + shard_state: + name_override: state + description: The state of the shard. type: string enum: - - hit - - miss - + - active + - active_primary + - relocating + - initializing + - unassigned + - unassigned_delayed + task_state: + name_override: state + description: The state of the task. + type: string + enum: + - rejected + - completed + thread_pool_name: + description: The name of the thread pool. + type: string + thread_state: + name_override: state + description: The state of the thread. + type: string + enum: + - active + - idle metrics: # these metrics are from /_nodes/stats, and are node level metrics elasticsearch.breaker.memory.estimated: description: Estimated memory used for the operation. + stability: development unit: By gauge: value_type: int @@ -202,6 +203,7 @@ metrics: enabled: true elasticsearch.breaker.memory.limit: description: Memory limit for the circuit breaker. + stability: development unit: By sum: monotonic: false @@ -211,6 +213,7 @@ metrics: enabled: true elasticsearch.breaker.tripped: description: Total number of times the circuit breaker has been triggered and prevented an out of memory error. + stability: development unit: "1" sum: monotonic: true @@ -218,625 +221,609 @@ metrics: value_type: int attributes: [circuit_breaker_name] enabled: true - elasticsearch.node.cache.memory.usage: - description: The size in bytes of the cache on a node. - unit: By + elasticsearch.cluster.data_nodes: + description: The number of data nodes in the cluster. + stability: development + unit: "{nodes}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [cache_name] + attributes: [] enabled: true - elasticsearch.node.cache.evictions: - description: The number of evictions from the cache on a node. - unit: "{evictions}" + elasticsearch.cluster.health: + description: The health status of the cluster. + stability: development + extended_documentation: Health status is based on the state of its primary and replica shards. Green indicates all shards are assigned. Yellow indicates that one or more replica shards are unassigned. Red indicates that one or more primary shards are unassigned, making some data unavailable. + unit: "{status}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [cache_name] + attributes: [health_status] enabled: true - elasticsearch.node.cache.count: - description: Total count of query cache misses across all shards assigned to selected nodes. - unit: "{count}" + elasticsearch.cluster.in_flight_fetch: + description: The number of unfinished fetches. + stability: development + unit: "{fetches}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ query_cache_count_type ] + attributes: [] enabled: true - elasticsearch.node.cache.size: - description: Total amount of memory used for the query cache across all shards assigned to the node. - unit: By + # these metrics are from /_cluster/health, and are cluster level metrics + elasticsearch.cluster.indices.cache.evictions: + description: The number of evictions from the cache for indices in cluster. + stability: development + unit: "{evictions}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [cache_name] enabled: false - elasticsearch.node.fs.disk.available: - description: The amount of disk space available to the JVM across all file stores for this node. Depending on OS or process level restrictions, this might appear less than free. This is the actual amount of free disk space the Elasticsearch node can utilise. - unit: By + elasticsearch.cluster.nodes: + description: The total number of nodes in the cluster. + stability: development + unit: "{nodes}" sum: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - elasticsearch.node.fs.disk.free: - description: The amount of unallocated disk space across all file stores for this node. - unit: By + elasticsearch.cluster.pending_tasks: + description: The number of cluster-level changes that have not yet been executed. + stability: development + unit: "{tasks}" sum: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - elasticsearch.node.fs.disk.total: - description: The amount of disk space across all file stores for this node. - unit: By + elasticsearch.cluster.published_states.differences: + description: Number of differences between published cluster states. + stability: development + unit: "1" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [] + attributes: [cluster_published_difference_state] enabled: true - # The calculation for node.disk.io.read is actually in KiBy(1024 bytes), not kBy (1000 bytes) - # The metric value calculation comes from sectors: https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsInfo.java#L287 - # The metric value is gathered by reading disk stats files from https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsProbe.java#L117 - # which come from a kernel https://www.kernel.org/doc/Documentation/ABI/testing/procfs-diskstats - # Linux always considers sectors to be 512 bytes https://github.com/torvalds/linux/blob/6f0d349d922ba44e4348a17a78ea51b7135965b1/include/linux/types.h#L125 - elasticsearch.node.disk.io.read: - description: The total number of kilobytes read across all file stores for this node. - unit: KiBy + elasticsearch.cluster.published_states.full: + description: Number of published cluster states. + stability: development + unit: "1" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] enabled: true - extended_documentation: This metric is available only on Linux systems. - # The calculation for node.disk.io.write is actually in KiBy(1024 bytes), not kBy (1000 bytes) - # The metric value calculation comes from sectors: https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsInfo.java#L293 - # The metric value is gathered by reading disk stats files from https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsProbe.java#L117 - # which come from a kernel https://www.kernel.org/doc/Documentation/ABI/testing/procfs-diskstats - # Linux always considers sectors to be 512 bytes https://github.com/torvalds/linux/blob/6f0d349d922ba44e4348a17a78ea51b7135965b1/include/linux/types.h#L125 - elasticsearch.node.disk.io.write: - description: The total number of kilobytes written across all file stores for this node. - unit: KiBy + elasticsearch.cluster.shards: + description: The number of shards in the cluster. + stability: development + unit: "{shards}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [shard_state] enabled: true - extended_documentation: This metric is available only on Linux systems. - elasticsearch.node.cluster.io: - description: The number of bytes sent and received on the network for internal cluster communication. - unit: By + elasticsearch.cluster.state_queue: + description: Number of cluster states in queue. + stability: development + unit: "1" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [direction] + attributes: [cluster_state_queue_state] enabled: true - elasticsearch.node.cluster.connections: - description: The number of open tcp connections for internal cluster communication. - unit: "{connections}" + elasticsearch.cluster.state_update.count: + description: The number of cluster state update attempts that changed the cluster state since the node started. + stability: development + unit: "1" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [] + attributes: [cluster_state_update_state] enabled: true - elasticsearch.node.http.connections: - description: The number of HTTP connections to the node. - unit: "{connections}" + elasticsearch.cluster.state_update.time: + description: The cumulative amount of time updating the cluster state since the node started. + stability: development + unit: ms sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [] + attributes: [cluster_state_update_state, cluster_state_update_type] enabled: true - elasticsearch.node.operations.current: - description: Number of query operations currently running. - unit: "{operations}" - gauge: + elasticsearch.index.cache.evictions: + description: The number of evictions from the cache for an index. + stability: development + unit: "{evictions}" + sum: + monotonic: true + aggregation_temporality: cumulative value_type: int - attributes: [ operation ] + attributes: [cache_name, index_aggregation_type] enabled: false - elasticsearch.node.operations.completed: - description: The number of operations completed by a node. + elasticsearch.index.cache.memory.usage: + description: The size in bytes of the cache for an index. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + attributes: [cache_name, index_aggregation_type] + enabled: false + elasticsearch.index.cache.size: + description: The number of elements of the query cache for an index. + stability: development + unit: "1" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + attributes: [index_aggregation_type] + enabled: false + elasticsearch.index.documents: + description: The number of documents for an index. + stability: development + unit: "{documents}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + attributes: [document_state, index_aggregation_type] + enabled: true + elasticsearch.index.operations.completed: + description: The number of operations completed for an index. + stability: development unit: "{operations}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [operation] + attributes: [operation, index_aggregation_type] enabled: true - elasticsearch.node.operations.time: - description: Time spent on operations by a node. - unit: ms + elasticsearch.index.operations.merge.current: + description: The number of currently active segment merges + stability: development + unit: "{merges}" + gauge: + value_type: int + attributes: [index_aggregation_type] + enabled: true + elasticsearch.index.operations.merge.docs_count: + description: The total number of documents in merge operations for an index. + stability: development + unit: "{documents}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [operation] - enabled: true - elasticsearch.node.operations.get.completed: - description: The number of hits and misses resulting from GET operations. - unit: "{operations}" + attributes: [index_aggregation_type] + enabled: false + elasticsearch.index.operations.merge.size: + description: The total size of merged segments for an index. + stability: development + unit: By sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [get_result] + attributes: [index_aggregation_type] enabled: false - elasticsearch.node.operations.get.time: - description: The time spent on hits and misses resulting from GET operations. + elasticsearch.index.operations.time: + description: Time spent on operations for an index. + stability: development unit: ms sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [get_result] - enabled: false - elasticsearch.node.shards.size: - description: The size of the shards assigned to this node. - unit: By + attributes: [operation, index_aggregation_type] + enabled: true + elasticsearch.index.segments.count: + description: Number of segments of an index. + stability: development + unit: "{segments}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [] + attributes: [index_aggregation_type] enabled: true - elasticsearch.node.shards.data_set.size: - description: Total data set size of all shards assigned to the node. This includes the size of shards not stored fully on the node, such as the cache for partially mounted indices. + elasticsearch.index.segments.memory: + description: Size of memory for segment object of an index. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] - enabled: true - elasticsearch.node.shards.reserved.size: - description: A prediction of how much larger the shard stores on this node will eventually grow due to ongoing peer recoveries, restoring snapshots, and similar activities. A value of -1 indicates that this is not available. + attributes: [index_aggregation_type, segments_memory_object_type] + enabled: false + elasticsearch.index.segments.size: + description: Size of segments of an index. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + attributes: [index_aggregation_type] + enabled: false + elasticsearch.index.shards.size: + description: The size of the shards assigned to this index. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [index_aggregation_type] enabled: true - elasticsearch.node.translog.operations: - description: Number of transaction log operations. + elasticsearch.index.translog.operations: + description: Number of transaction log operations for an index. + stability: development unit: "{operations}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] - enabled: true - elasticsearch.node.translog.size: - description: Size of the transaction log. + attributes: [index_aggregation_type] + enabled: false + elasticsearch.index.translog.size: + description: Size of the transaction log for an index. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] - enabled: true - elasticsearch.node.translog.uncommitted.size: - description: Size of uncommitted transaction log operations. + attributes: [index_aggregation_type] + enabled: false + elasticsearch.indexing_pressure.memory.limit: + description: Configured memory limit, in bytes, for the indexing requests. + stability: development unit: By + gauge: + value_type: int + attributes: [] + enabled: true + elasticsearch.indexing_pressure.memory.total.primary_rejections: + description: Cumulative number of indexing requests rejected in the primary stage. + stability: development + unit: "1" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] enabled: true - elasticsearch.node.thread_pool.threads: - description: The number of threads in the thread pool. - unit: "{threads}" + elasticsearch.indexing_pressure.memory.total.replica_rejections: + description: Number of indexing requests rejected in the replica stage. + stability: development + unit: "1" + sum: + monotonic: true + aggregation_temporality: cumulative + value_type: int + attributes: [] + enabled: true + elasticsearch.memory.indexing_pressure: + description: Memory consumed, in bytes, by indexing requests in the specified stage. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [thread_pool_name, thread_state] + attributes: [indexing_pressure_stage] enabled: true - elasticsearch.node.thread_pool.tasks.queued: - description: The number of queued tasks in the thread pool. - unit: "{tasks}" + elasticsearch.node.cache.count: + description: Total count of query cache misses across all shards assigned to selected nodes. + stability: development + unit: "{count}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [thread_pool_name] + attributes: [query_cache_count_type] enabled: true - elasticsearch.node.thread_pool.tasks.finished: - description: The number of tasks finished by the thread pool. - unit: "{tasks}" + elasticsearch.node.cache.evictions: + description: The number of evictions from the cache on a node. + stability: development + unit: "{evictions}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [thread_pool_name, task_state] + attributes: [cache_name] enabled: true - elasticsearch.node.documents: - description: The number of documents on the node. - unit: "{documents}" + elasticsearch.node.cache.memory.usage: + description: The size in bytes of the cache on a node. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [document_state] + attributes: [cache_name] enabled: true - elasticsearch.node.open_files: - description: The number of open file descriptors held by the node. - unit: "{files}" + elasticsearch.node.cache.size: + description: Total amount of memory used for the query cache across all shards assigned to the node. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [] - enabled: true - # These metrics are JVM metrics, collected from /_nodes/stats - # See https://github.com/open-telemetry/opentelemetry-java-contrib/blob/main/jmx-metrics/docs/target-systems/jvm.md - jvm.classes.loaded: - description: The number of loaded classes - unit: "1" - gauge: + enabled: false + elasticsearch.node.cluster.connections: + description: The number of open tcp connections for internal cluster communication. + stability: development + unit: "{connections}" + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - jvm.gc.collections.count: - description: The total number of garbage collections that have occurred - unit: "1" + elasticsearch.node.cluster.io: + description: The number of bytes sent and received on the network for internal cluster communication. + stability: development + unit: By sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [collector_name] + attributes: [direction] enabled: true - jvm.gc.collections.elapsed: - description: "The approximate accumulated collection elapsed time" - unit: ms + elasticsearch.node.disk.io.read: + description: The total number of kilobytes read across all file stores for this node. + stability: development + unit: KiBy sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [collector_name] + attributes: [] enabled: true - jvm.memory.heap.max: - description: The maximum amount of memory can be used for the heap - unit: By - gauge: + extended_documentation: This metric is available only on Linux systems. + # The calculation for node.disk.io.write is actually in KiBy(1024 bytes), not kBy (1000 bytes) + # The metric value calculation comes from sectors: https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsInfo.java#L293 + # The metric value is gathered by reading disk stats files from https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsProbe.java#L117 + # which come from a kernel https://www.kernel.org/doc/Documentation/ABI/testing/procfs-diskstats + # Linux always considers sectors to be 512 bytes https://github.com/torvalds/linux/blob/6f0d349d922ba44e4348a17a78ea51b7135965b1/include/linux/types.h#L125 + elasticsearch.node.disk.io.write: + description: The total number of kilobytes written across all file stores for this node. + stability: development + unit: KiBy + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - jvm.memory.heap.used: - description: The current heap memory usage - unit: By - gauge: + extended_documentation: This metric is available only on Linux systems. + elasticsearch.node.documents: + description: The number of documents on the node. + stability: development + unit: "{documents}" + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int - attributes: [] + attributes: [document_state] enabled: true - jvm.memory.heap.utilization: - description: Fraction of heap memory usage - unit: "1" - gauge: - value_type: double - attributes: [] - enabled: false - jvm.memory.heap.committed: - description: The amount of memory that is guaranteed to be available for the heap + elasticsearch.node.fs.disk.available: + description: The amount of disk space available to the JVM across all file stores for this node. Depending on OS or process level restrictions, this might appear less than free. This is the actual amount of free disk space the Elasticsearch node can utilise. + stability: development unit: By - gauge: + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - jvm.memory.nonheap.used: - description: The current non-heap memory usage - unit: By - gauge: - value_type: int - attributes: [] - enabled: true - jvm.memory.nonheap.committed: - description: The amount of memory that is guaranteed to be available for non-heap purposes - unit: By - gauge: - value_type: int - attributes: [] - enabled: true - jvm.memory.pool.max: - description: The maximum amount of memory can be used for the memory pool - unit: By - gauge: - value_type: int - attributes: [memory_pool_name] - enabled: true - jvm.memory.pool.used: - description: The current memory pool memory usage + elasticsearch.node.fs.disk.free: + description: The amount of unallocated disk space across all file stores for this node. + stability: development unit: By - gauge: - value_type: int - attributes: [memory_pool_name] - enabled: true - jvm.threads.count: - description: The current number of threads - unit: "1" - gauge: - value_type: int - attributes: [] - enabled: true - # these metrics are from /_cluster/pending_tasks, and are cluster level metrics - elasticsearch.cluster.pending_tasks: - description: The number of cluster-level changes that have not yet been executed. - unit: "{tasks}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] enabled: true - elasticsearch.cluster.in_flight_fetch: - description: The number of unfinished fetches. - unit: "{fetches}" + elasticsearch.node.fs.disk.total: + description: The amount of disk space across all file stores for this node. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] enabled: true - # these metrics are from /_cluster/health, and are cluster level metrics - elasticsearch.cluster.shards: - description: The number of shards in the cluster. - unit: "{shards}" + # The calculation for node.disk.io.read is actually in KiBy(1024 bytes), not kBy (1000 bytes) + # The metric value calculation comes from sectors: https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsInfo.java#L287 + # The metric value is gathered by reading disk stats files from https://github.com/elastic/elasticsearch/blob/3c6797f2d2271a30b24f505da55afbb5ea10733e/server/src/main/java/org/elasticsearch/monitor/fs/FsProbe.java#L117 + # which come from a kernel https://www.kernel.org/doc/Documentation/ABI/testing/procfs-diskstats + # Linux always considers sectors to be 512 bytes https://github.com/torvalds/linux/blob/6f0d349d922ba44e4348a17a78ea51b7135965b1/include/linux/types.h#L125 + elasticsearch.node.http.connections: + description: The number of HTTP connections to the node. + stability: development + unit: "{connections}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [shard_state] + attributes: [] enabled: true - elasticsearch.cluster.data_nodes: - description: The number of data nodes in the cluster. - unit: "{nodes}" + elasticsearch.node.ingest.documents: + description: Total number of documents ingested during the lifetime of this node. + stability: development + unit: "{documents}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - elasticsearch.cluster.nodes: - description: The total number of nodes in the cluster. - unit: "{nodes}" + elasticsearch.node.ingest.documents.current: + description: Total number of documents currently being ingested. + stability: development + unit: "{documents}" sum: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [] enabled: true - elasticsearch.cluster.health: - description: The health status of the cluster. - extended_documentation: - Health status is based on the state of its primary and replica shards. - Green indicates all shards are assigned. - Yellow indicates that one or more replica shards are unassigned. - Red indicates that one or more primary shards are unassigned, making some data unavailable. - unit: "{status}" + elasticsearch.node.ingest.operations.failed: + description: Total number of failed ingest operations during the lifetime of this node. + stability: development + unit: "{operation}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [health_status] - enabled: true - elasticsearch.os.cpu.usage: - description: Recent CPU usage for the whole system, or -1 if not supported. - unit: '%' - gauge: - value_type: int - attributes: [ ] - enabled: true - elasticsearch.os.cpu.load_avg.1m: - description: One-minute load average on the system (field is not present if one-minute load average is not available). - unit: "1" - gauge: - value_type: double - attributes: [ ] - enabled: true - elasticsearch.os.cpu.load_avg.5m: - description: Five-minute load average on the system (field is not present if five-minute load average is not available). - unit: "1" - gauge: - value_type: double - attributes: [ ] - enabled: true - elasticsearch.os.cpu.load_avg.15m: - description: Fifteen-minute load average on the system (field is not present if fifteen-minute load average is not available). - unit: "1" - gauge: - value_type: double - attributes: [ ] - enabled: true - elasticsearch.os.memory: - description: Amount of physical memory. - unit: By - gauge: - value_type: int - attributes: [memory_state] + attributes: [] enabled: true - elasticsearch.memory.indexing_pressure: - description: Memory consumed, in bytes, by indexing requests in the specified stage. - unit: By + elasticsearch.node.open_files: + description: The number of open file descriptors held by the node. + stability: development + unit: "{files}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ indexing_pressure_stage ] - enabled: true - elasticsearch.indexing_pressure.memory.total.primary_rejections: - description: Cumulative number of indexing requests rejected in the primary stage. - unit: "1" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [ ] + attributes: [] enabled: true - elasticsearch.indexing_pressure.memory.total.replica_rejections: - description: Number of indexing requests rejected in the replica stage. - unit: "1" + # These metrics are JVM metrics, collected from /_nodes/stats + # See https://github.com/open-telemetry/opentelemetry-java-contrib/blob/main/jmx-metrics/docs/target-systems/jvm.md + elasticsearch.node.operations.completed: + description: The number of operations completed by a node. + stability: development + unit: "{operations}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [operation] enabled: true - elasticsearch.indexing_pressure.memory.limit: - description: Configured memory limit, in bytes, for the indexing requests. - unit: By + elasticsearch.node.operations.current: + description: Number of query operations currently running. + stability: development + unit: "{operations}" gauge: value_type: int - attributes: [ ] - enabled: true - elasticsearch.cluster.state_queue: - description: Number of cluster states in queue. - unit: "1" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [ cluster_state_queue_state ] - enabled: true - elasticsearch.cluster.published_states.full: - description: Number of published cluster states. - unit: "1" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [ ] - enabled: true - elasticsearch.cluster.published_states.differences: - description: Number of differences between published cluster states. - unit: "1" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [ cluster_published_difference_state ] - enabled: true - elasticsearch.cluster.state_update.count: - description: The number of cluster state update attempts that changed the cluster state since the node started. - unit: "1" + attributes: [operation] + enabled: false + elasticsearch.node.operations.get.completed: + description: The number of hits and misses resulting from GET operations. + stability: development + unit: "{operations}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ cluster_state_update_state ] - enabled: true - elasticsearch.cluster.state_update.time: - description: The cumulative amount of time updating the cluster state since the node started. + attributes: [get_result] + enabled: false + elasticsearch.node.operations.get.time: + description: The time spent on hits and misses resulting from GET operations. + stability: development unit: ms sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ cluster_state_update_state, cluster_state_update_type ] - enabled: true - elasticsearch.cluster.indices.cache.evictions: - description: The number of evictions from the cache for indices in cluster. - unit: "{evictions}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [cache_name] + attributes: [get_result] enabled: false - elasticsearch.node.ingest.documents: - description: Total number of documents ingested during the lifetime of this node. - unit: "{documents}" + elasticsearch.node.operations.time: + description: Time spent on operations by a node. + stability: development + unit: ms sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [operation] enabled: true - elasticsearch.node.ingest.documents.current: - description: Total number of documents currently being ingested. + elasticsearch.node.pipeline.ingest.documents.current: + description: Total number of documents currently being ingested by a pipeline. + stability: development unit: "{documents}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ] - enabled: true - elasticsearch.node.ingest.operations.failed: - description: Total number of failed ingest operations during the lifetime of this node. - unit: "{operation}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [ ] + attributes: [ingest_pipeline_name] enabled: true elasticsearch.node.pipeline.ingest.documents.preprocessed: description: Number of documents preprocessed by the ingest pipeline. + stability: development unit: "{documents}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [ ingest_pipeline_name ] + attributes: [ingest_pipeline_name] enabled: true elasticsearch.node.pipeline.ingest.operations.failed: description: Total number of failed operations for the ingest pipeline. + stability: development unit: "{operation}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ingest_pipeline_name ] - enabled: true - elasticsearch.node.pipeline.ingest.documents.current: - description: Total number of documents currently being ingested by a pipeline. - unit: "{documents}" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [ ingest_pipeline_name ] - enabled: true - elasticsearch.node.script.compilations: - description: Total number of inline script compilations performed by the node. - unit: "{compilations}" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [ ] + attributes: [ingest_pipeline_name] enabled: true elasticsearch.node.script.cache_evictions: description: Total number of times the script cache has evicted old data. + stability: development unit: "1" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] enabled: true elasticsearch.node.script.compilation_limit_triggered: description: Total number of times the script compilation circuit breaker has limited inline script compilations. + stability: development unit: "1" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [ ] + attributes: [] + enabled: true + elasticsearch.node.script.compilations: + description: Total number of inline script compilations performed by the node. + stability: development + unit: "{compilations}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + attributes: [] enabled: true elasticsearch.node.segments.memory: description: Size of memory for segment object of a node. + stability: development unit: By sum: monotonic: false @@ -845,164 +832,266 @@ metrics: attributes: [segments_memory_object_type] enabled: false # these metrics are from /*/_stats and are index level metrics - elasticsearch.index.operations.completed: - description: The number of operations completed for an index. - unit: "{operations}" + elasticsearch.node.shards.data_set.size: + description: Total data set size of all shards assigned to the node. This includes the size of shards not stored fully on the node, such as the cache for partially mounted indices. + stability: development + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [operation, index_aggregation_type] + attributes: [] enabled: true - elasticsearch.index.operations.time: - description: Time spent on operations for an index. - unit: ms + elasticsearch.node.shards.reserved.size: + description: A prediction of how much larger the shard stores on this node will eventually grow due to ongoing peer recoveries, restoring snapshots, and similar activities. A value of -1 indicates that this is not available. + stability: development + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [operation, index_aggregation_type] + attributes: [] enabled: true - elasticsearch.index.shards.size: - description: The size of the shards assigned to this index. + elasticsearch.node.shards.size: + description: The size of the shards assigned to this node. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] + attributes: [] enabled: true - elasticsearch.index.operations.merge.size: - description: The total size of merged segments for an index. - unit: By + elasticsearch.node.thread_pool.tasks.finished: + description: The number of tasks finished by the thread pool. + stability: development + unit: "{tasks}" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] - enabled: false - elasticsearch.index.operations.merge.docs_count: - description: The total number of documents in merge operations for an index. - unit: "{documents}" + attributes: [thread_pool_name, task_state] + enabled: true + elasticsearch.node.thread_pool.tasks.queued: + description: The number of queued tasks in the thread pool. + stability: development + unit: "{tasks}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] - enabled: false - elasticsearch.index.operations.merge.current: - description: The number of currently active segment merges - unit: "{merges}" - gauge: - value_type: int - attributes: [ index_aggregation_type ] + attributes: [thread_pool_name] enabled: true - elasticsearch.index.segments.count: - description: Number of segments of an index. - unit: "{segments}" + elasticsearch.node.thread_pool.threads: + description: The number of threads in the thread pool. + stability: development + unit: "{threads}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] + attributes: [thread_pool_name, thread_state] enabled: true - elasticsearch.index.segments.size: - description: Size of segments of an index. - unit: By + elasticsearch.node.translog.operations: + description: Number of transaction log operations. + stability: development + unit: "{operations}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] - enabled: false - elasticsearch.index.segments.memory: - description: Size of memory for segment object of an index. + attributes: [] + enabled: true + elasticsearch.node.translog.size: + description: Size of the transaction log. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type, segments_memory_object_type] - enabled: false - elasticsearch.index.translog.operations: - description: Number of transaction log operations for an index. - unit: "{operations}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - attributes: [index_aggregation_type] - enabled: false - elasticsearch.index.translog.size: - description: Size of the transaction log for an index. + attributes: [] + enabled: true + elasticsearch.node.translog.uncommitted.size: + description: Size of uncommitted transaction log operations. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] - enabled: false - elasticsearch.index.cache.memory.usage: - description: The size in bytes of the cache for an index. + attributes: [] + enabled: true + elasticsearch.os.cpu.load_avg.15m: + description: Fifteen-minute load average on the system (field is not present if fifteen-minute load average is not available). + stability: development + unit: "1" + gauge: + value_type: double + attributes: [] + enabled: true + elasticsearch.os.cpu.load_avg.1m: + description: One-minute load average on the system (field is not present if one-minute load average is not available). + stability: development + unit: "1" + gauge: + value_type: double + attributes: [] + enabled: true + elasticsearch.os.cpu.load_avg.5m: + description: Five-minute load average on the system (field is not present if five-minute load average is not available). + stability: development + unit: "1" + gauge: + value_type: double + attributes: [] + enabled: true + elasticsearch.os.cpu.usage: + description: Recent CPU usage for the whole system, or -1 if not supported. + stability: development + unit: '%' + gauge: + value_type: int + attributes: [] + enabled: true + elasticsearch.os.memory: + description: Amount of physical memory. + stability: development unit: By + gauge: + value_type: int + attributes: [memory_state] + enabled: true + elasticsearch.process.cpu.time: + description: CPU time used by the process on which the Java virtual machine is running. + stability: development + unit: ms sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [cache_name, index_aggregation_type] + attributes: [] enabled: false - elasticsearch.index.cache.size: - description: The number of elements of the query cache for an index. + elasticsearch.process.cpu.usage: + description: CPU usage in percent. + stability: development unit: "1" + gauge: + value_type: double + attributes: [] + enabled: false + elasticsearch.process.memory.virtual: + description: Size of virtual memory that is guaranteed to be available to the running process. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [index_aggregation_type] + attributes: [] enabled: false - elasticsearch.index.cache.evictions: - description: The number of evictions from the cache for an index. - unit: "{evictions}" + + jvm.classes.loaded: + description: The number of loaded classes + stability: development + unit: "1" + gauge: + value_type: int + attributes: [] + enabled: true + jvm.gc.collections.count: + description: The total number of garbage collections that have occurred + stability: development + unit: "1" sum: monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [cache_name, index_aggregation_type] - enabled: false - elasticsearch.index.documents: - description: The number of documents for an index. - unit: "{documents}" + attributes: [collector_name] + enabled: true + jvm.gc.collections.elapsed: + description: "The approximate accumulated collection elapsed time" + stability: development + unit: ms sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [document_state, index_aggregation_type] + attributes: [collector_name] enabled: true - elasticsearch.process.cpu.usage: - description: CPU usage in percent. + jvm.memory.heap.committed: + description: The amount of memory that is guaranteed to be available for the heap + stability: development + unit: By + gauge: + value_type: int + attributes: [] + enabled: true + jvm.memory.heap.max: + description: The maximum amount of memory can be used for the heap + stability: development + unit: By + gauge: + value_type: int + attributes: [] + enabled: true + jvm.memory.heap.used: + description: The current heap memory usage + stability: development + unit: By + gauge: + value_type: int + attributes: [] + enabled: true + jvm.memory.heap.utilization: + description: Fraction of heap memory usage + stability: development unit: "1" gauge: value_type: double - attributes: [ ] + attributes: [] enabled: false - elasticsearch.process.cpu.time: - description: CPU time used by the process on which the Java virtual machine is running. - unit: ms - sum: - monotonic: true - aggregation_temporality: cumulative + jvm.memory.nonheap.committed: + description: The amount of memory that is guaranteed to be available for non-heap purposes + stability: development + unit: By + gauge: value_type: int - attributes: [ ] - enabled: false - elasticsearch.process.memory.virtual: - description: Size of virtual memory that is guaranteed to be available to the running process. + attributes: [] + enabled: true + jvm.memory.nonheap.used: + description: The current non-heap memory usage + stability: development unit: By - sum: - monotonic: false - aggregation_temporality: cumulative + gauge: value_type: int - attributes: [ ] - enabled: false + attributes: [] + enabled: true + jvm.memory.pool.max: + description: The maximum amount of memory can be used for the memory pool + stability: development + unit: By + gauge: + value_type: int + attributes: [memory_pool_name] + enabled: true + jvm.memory.pool.used: + description: The current memory pool memory usage + stability: development + unit: By + gauge: + value_type: int + attributes: [memory_pool_name] + enabled: true + jvm.threads.count: + description: The current number of threads + stability: development + unit: "1" + gauge: + value_type: int + attributes: [] + enabled: true + # these metrics are from /_cluster/pending_tasks, and are cluster level metrics tests: config: diff --git a/metric-metadata/envoyalsreceiver.yaml b/metric-metadata/envoyalsreceiver.yaml index 35ea570..2bd15fe 100644 --- a/metric-metadata/envoyalsreceiver.yaml +++ b/metric-metadata/envoyalsreceiver.yaml @@ -7,3 +7,7 @@ status: distributions: [contrib] codeowners: active: [evan-bradley, zirain] + +tests: + config: + endpoint: 127.0.0.1:0 diff --git a/metric-metadata/exceptionsconnector.yaml b/metric-metadata/exceptionsconnector.yaml index 81e18bb..e14c900 100644 --- a/metric-metadata/exceptionsconnector.yaml +++ b/metric-metadata/exceptionsconnector.yaml @@ -1,4 +1,5 @@ type: exceptions +display_name: Exceptions Connector status: class: connector diff --git a/metric-metadata/expvarreceiver.yaml b/metric-metadata/expvarreceiver.yaml index e4ade19..b8a703a 100644 --- a/metric-metadata/expvarreceiver.yaml +++ b/metric-metadata/expvarreceiver.yaml @@ -9,19 +9,10 @@ status: active: [jamesmoessis, MovieStoreGuy] metrics: - process.runtime.memstats.total_alloc: - enabled: false - description: Cumulative bytes allocated for heap objects. - extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: By - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - - process.runtime.memstats.sys: + process.runtime.memstats.buck_hash_sys: enabled: true - description: Total bytes of memory obtained from the OS. + description: Bytes of memory in profiling bucket hash tables. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -29,19 +20,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.lookups: - enabled: false - description: Number of pointer lookups performed by the runtime. - extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: "{lookups}" - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - - process.runtime.memstats.mallocs: + process.runtime.memstats.frees: enabled: true - description: Cumulative count of heap objects allocated. + description: Cumulative count of heap objects freed. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: "{objects}" sum: @@ -49,19 +31,29 @@ metrics: monotonic: true aggregation_temporality: cumulative - process.runtime.memstats.frees: + process.runtime.memstats.gc_cpu_fraction: enabled: true - description: Cumulative count of heap objects freed. + description: The fraction of this program's available CPU time used by the GC since the program started. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: "{objects}" + unit: "1" + gauge: + value_type: double + process.runtime.memstats.gc_sys: + enabled: true + description: Bytes of memory in garbage collection metadata. + stability: development + extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats + unit: By sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative process.runtime.memstats.heap_alloc: enabled: true description: Bytes of allocated heap objects. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -69,9 +61,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.heap_sys: + process.runtime.memstats.heap_idle: enabled: true - description: Bytes of heap memory obtained by the OS. + description: Bytes in idle (unused) spans. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -79,9 +72,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.heap_idle: + process.runtime.memstats.heap_inuse: enabled: true - description: Bytes in idle (unused) spans. + description: Bytes in in-use spans. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -89,11 +83,12 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.heap_inuse: + process.runtime.memstats.heap_objects: enabled: true - description: Bytes in in-use spans. + description: Number of allocated heap objects. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: By + unit: "{objects}" sum: value_type: int monotonic: false @@ -102,6 +97,7 @@ metrics: process.runtime.memstats.heap_released: enabled: true description: Bytes of physical memory returned to the OS. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -109,39 +105,52 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.heap_objects: + process.runtime.memstats.heap_sys: enabled: true - description: Number of allocated heap objects. + description: Bytes of heap memory obtained by the OS. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: "{objects}" + unit: By sum: value_type: int monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.stack_inuse: + process.runtime.memstats.last_pause: enabled: true - description: Bytes in stack spans. + description: The most recent stop-the-world pause time. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: By + unit: ns + gauge: + value_type: int + + process.runtime.memstats.lookups: + enabled: false + description: Number of pointer lookups performed by the runtime. + stability: development + extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats + unit: "{lookups}" sum: value_type: int monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.stack_sys: + process.runtime.memstats.mallocs: enabled: true - description: Bytes of stack memory obtained from the OS. + description: Cumulative count of heap objects allocated. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: By + unit: "{objects}" sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - process.runtime.memstats.mspan_inuse: + process.runtime.memstats.mcache_inuse: enabled: true - description: Bytes of allocated mspan structures. + description: Bytes of allocated mcache structures. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -149,9 +158,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.mspan_sys: + process.runtime.memstats.mcache_sys: enabled: true - description: Bytes of memory obtained from the OS for mspan structures. + description: Bytes of memory obtained from the OS for mcache structures. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -159,9 +169,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.mcache_inuse: + process.runtime.memstats.mspan_inuse: enabled: true - description: Bytes of allocated mcache structures. + description: Bytes of allocated mspan structures. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -169,9 +180,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.mcache_sys: + process.runtime.memstats.mspan_sys: enabled: true - description: Bytes of memory obtained from the OS for mcache structures. + description: Bytes of memory obtained from the OS for mspan structures. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -179,9 +191,10 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.buck_hash_sys: + process.runtime.memstats.next_gc: enabled: true - description: Bytes of memory in profiling bucket hash tables. + description: The target heap size of the next GC cycle. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -189,29 +202,32 @@ metrics: monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.gc_sys: + process.runtime.memstats.num_forced_gc: enabled: true - description: Bytes of memory in garbage collection metadata. + description: Number of GC cycles that were forced by the application calling the GC function. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - process.runtime.memstats.other_sys: + process.runtime.memstats.num_gc: enabled: true - description: Bytes of memory in miscellaneous off-heap runtime allocations. + description: Number of completed GC cycles. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - process.runtime.memstats.next_gc: + process.runtime.memstats.other_sys: enabled: true - description: The target heap size of the next GC cycle. + description: Bytes of memory in miscellaneous off-heap runtime allocations. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -222,6 +238,7 @@ metrics: process.runtime.memstats.pause_total: enabled: true description: The cumulative nanoseconds in GC stop-the-world pauses since the program started. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: @@ -229,38 +246,46 @@ metrics: monotonic: true aggregation_temporality: cumulative - process.runtime.memstats.last_pause: + process.runtime.memstats.stack_inuse: enabled: true - description: The most recent stop-the-world pause time. + description: Bytes in stack spans. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: ns - gauge: + unit: By + sum: value_type: int + monotonic: false + aggregation_temporality: cumulative - process.runtime.memstats.num_gc: + process.runtime.memstats.stack_sys: enabled: true - description: Number of completed GC cycles. + description: Bytes of stack memory obtained from the OS. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.num_forced_gc: + process.runtime.memstats.sys: enabled: true - description: Number of GC cycles that were forced by the application calling the GC function. + description: Total bytes of memory obtained from the OS. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats unit: By sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - process.runtime.memstats.gc_cpu_fraction: - enabled: true - description: The fraction of this program's available CPU time used by the GC since the program started. + process.runtime.memstats.total_alloc: + enabled: false + description: Cumulative bytes allocated for heap objects. + stability: development extended_documentation: As defined by https://pkg.go.dev/runtime#MemStats - unit: "1" - gauge: - value_type: double + unit: By + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative diff --git a/metric-metadata/failoverconnector.yaml b/metric-metadata/failoverconnector.yaml index 3182dac..11c7d1d 100644 --- a/metric-metadata/failoverconnector.yaml +++ b/metric-metadata/failoverconnector.yaml @@ -1,4 +1,5 @@ type: failover +display_name: Failover Connector status: class: connector diff --git a/metric-metadata/faroexporter.yaml b/metric-metadata/faroexporter.yaml index 561e7ea..0544cca 100644 --- a/metric-metadata/faroexporter.yaml +++ b/metric-metadata/faroexporter.yaml @@ -1,9 +1,11 @@ type: faro +display_name: Faro Exporter status: class: exporter stability: alpha: [logs, traces] - distributions: [] + distributions: + - contrib codeowners: active: [dehaansa,rlankfo,mar4uk] diff --git a/metric-metadata/faroreceiver.yaml b/metric-metadata/faroreceiver.yaml index 782b460..ce7dc50 100644 --- a/metric-metadata/faroreceiver.yaml +++ b/metric-metadata/faroreceiver.yaml @@ -4,6 +4,7 @@ status: class: receiver stability: alpha: [logs, traces] - distributions: [] + distributions: + - contrib codeowners: active: [dehaansa,rlankfo,mar4uk] diff --git a/metric-metadata/fileconsumer.yaml b/metric-metadata/fileconsumer.yaml index 8d7065e..ce76058 100644 --- a/metric-metadata/fileconsumer.yaml +++ b/metric-metadata/fileconsumer.yaml @@ -9,12 +9,46 @@ status: active: [andrzej-stencel] emeritus: [djaglowski] +feature_gates: + - id: filelog.allowFileDeletion + stage: alpha + description: >- + When enabled, allows usage of the `delete_after_read` setting. + from_version: v0.70.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/16314 + - id: filelog.allowHeaderMetadataParsing + stage: beta + description: >- + When enabled, allows usage of the `header` setting. + from_version: v0.73.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/18198 + - id: filelog.decompressFingerprint + stage: stable + description: >- + Computes fingerprint for compressed files by decompressing its data. + from_version: v0.128.0 + to_version: v0.142.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/40256 + - id: filelog.mtimeSortType + stage: alpha + description: >- + When enabled, allows usage of `ordering_criteria.mode` = `mtime`. + from_version: v0.89.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/27812 + - id: filelog.windows.caseInsensitive + stage: alpha + description: >- + On Windows, make matching patterns in include/exclude case insensitive. + from_version: v0.142.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/43777 + telemetry: metrics: fileconsumer_open_files: description: Number of open files unit: "1" enabled: true + stability: development sum: value_type: int monotonic: false @@ -22,6 +56,7 @@ telemetry: description: Number of open files that are being read unit: "1" enabled: true + stability: development sum: value_type: int monotonic: false diff --git a/metric-metadata/fileexporter.yaml b/metric-metadata/fileexporter.yaml index 75c12d2..e529ecc 100644 --- a/metric-metadata/fileexporter.yaml +++ b/metric-metadata/fileexporter.yaml @@ -1,4 +1,5 @@ type: file +display_name: File Exporter status: class: exporter @@ -13,8 +14,3 @@ tests: config: path: testdata/log.json expect_consumer_error: true - goleak: - ignore: - top: - # Existing issue for leak: https://github.com/natefinch/lumberjack/issues/56 - - "gopkg.in/natefinch/lumberjack%2ev2.(*Logger).millRun" diff --git a/metric-metadata/filestatsreceiver.yaml b/metric-metadata/filestatsreceiver.yaml index 03ba6ce..70dc786 100644 --- a/metric-metadata/filestatsreceiver.yaml +++ b/metric-metadata/filestatsreceiver.yaml @@ -26,41 +26,51 @@ attributes: type: string metrics: - file.mtime: - description: Elapsed time since the last modification of the file or folder, in seconds since Epoch. - enabled: true + file.atime: + description: Elapsed time since last access of the file or folder, in seconds since Epoch. + enabled: false + stability: development sum: - monotonic: false aggregation_temporality: cumulative + monotonic: false value_type: int + unit: "s" + file.count: + description: The number of files matched + enabled: false + stability: development + gauge: + value_type: int + + unit: "{file}" file.ctime: description: Elapsed time since the last change of the file or folder, in seconds since Epoch. In addition to `file.mtime`, this metric tracks metadata changes such as permissions or renaming the file. enabled: false + stability: development sum: - monotonic: false aggregation_temporality: cumulative + monotonic: false value_type: int + unit: "s" attributes: - file.permissions - file.atime: - description: Elapsed time since last access of the file or folder, in seconds since Epoch. - enabled: false + file.mtime: + description: Elapsed time since the last modification of the file or folder, in seconds since Epoch. + enabled: true + stability: development sum: - monotonic: false aggregation_temporality: cumulative + monotonic: false value_type: int + unit: "s" file.size: description: The size of the file or folder, in bytes. enabled: true + stability: development gauge: value_type: int + unit: "b" - file.count: - description: The number of files matched - enabled: false - gauge: - value_type: int - unit: "{file}" diff --git a/metric-metadata/filestorage.yaml b/metric-metadata/filestorage.yaml index 47fc41b..860a791 100644 --- a/metric-metadata/filestorage.yaml +++ b/metric-metadata/filestorage.yaml @@ -1,5 +1,8 @@ +display_name: File Storage Extension type: file_storage +description: The File Storage Extension can persist state to the local file system. + status: class: extension stability: diff --git a/metric-metadata/filesystemscraper.yaml b/metric-metadata/filesystemscraper.yaml index 8188da8..b536587 100644 --- a/metric-metadata/filesystemscraper.yaml +++ b/metric-metadata/filesystemscraper.yaml @@ -33,20 +33,22 @@ attributes: description: Filesystem type, such as, "ext4", "tmpfs", etc. metrics: - system.filesystem.usage: + system.filesystem.inodes.usage: enabled: true - description: Filesystem bytes used. - unit: By + description: FileSystem inodes used. + unit: "{inodes}" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false attributes: [device, mode, mountpoint, type, state] - system.filesystem.inodes.usage: + system.filesystem.usage: enabled: true - description: FileSystem inodes used. - unit: "{inodes}" + description: Filesystem bytes used. + unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -57,6 +59,7 @@ metrics: enabled: false description: Fraction of filesystem bytes used. unit: "1" + stability: development gauge: value_type: double attributes: [device, mode, mountpoint, type] diff --git a/metric-metadata/filterprocessor.yaml b/metric-metadata/filterprocessor.yaml index bfccf18..8fd3e8a 100644 --- a/metric-metadata/filterprocessor.yaml +++ b/metric-metadata/filterprocessor.yaml @@ -1,13 +1,18 @@ +display_name: Filter Processor type: filter +description: The Filter Processor allows dropping spans, span events, metrics, datapoints, and logs from the collector. + status: class: processor stability: alpha: [traces, metrics, logs] + development: [profiles] distributions: [core, contrib, k8s] warnings: [Orphaned Telemetry, Other] codeowners: - active: [TylerHelmuth, boostchicken] + active: [TylerHelmuth, evan-bradley, edmocosta, bogdandrutu] + emeritus: [boostchicken] tests: config: @@ -20,6 +25,7 @@ telemetry: sum: value_type: int monotonic: true + stability: development processor_filter_logs.filtered: enabled: true description: Number of logs dropped by the filter processor @@ -27,6 +33,15 @@ telemetry: sum: value_type: int monotonic: true + stability: development + processor_filter_profiles.filtered: + enabled: true + description: Number of profiles dropped by the filter processor + unit: "1" + sum: + value_type: int + monotonic: true + stability: development processor_filter_spans.filtered: enabled: true description: Number of spans dropped by the filter processor @@ -34,3 +49,4 @@ telemetry: sum: value_type: int monotonic: true + stability: development diff --git a/metric-metadata/flinkmetricsreceiver.yaml b/metric-metadata/flinkmetricsreceiver.yaml index c1fde03..0723469 100644 --- a/metric-metadata/flinkmetricsreceiver.yaml +++ b/metric-metadata/flinkmetricsreceiver.yaml @@ -11,83 +11,78 @@ status: resource_attributes: # These resource attributes are Flinks system scope variables, which contains context information about metrics. These are required to uniquely identify incoming metrics as the same job can run multiple times concurrently. See https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/ops/metrics/#system-scope for more information. - host.name: - description: The host name. + flink.job.name: + description: The job name. type: string enabled: true - flink.taskmanager.id: - description: The taskmanager ID. + flink.resource.type: + description: The flink scope type in which a metric belongs to. type: string enabled: true - flink.job.name: - description: The job name. + enum: [jobmanager, taskmanager] + flink.subtask.index: + description: The subtask index. type: string enabled: true flink.task.name: description: The task name. type: string enabled: true - flink.subtask.index: - description: The subtask index. + flink.taskmanager.id: + description: The taskmanager ID. type: string enabled: true - flink.resource.type: - description: The flink scope type in which a metric belongs to. + host.name: + description: The host name. type: string enabled: true - enum: [ jobmanager, taskmanager ] attributes: - operator_name: - name_override: name - description: The operator name. + checkpoint: + description: The number of checkpoints completed or that failed. type: string + enum: [completed, failed] garbage_collector_name: name_override: name description: The names for the parallel scavenge and garbage first garbage collectors. type: string - enum: [ PS_MarkSweep, PS_Scavenge, G1_Young_Generation, G1_Old_Generation ] - checkpoint: - description: The number of checkpoints completed or that failed. + enum: [PS_MarkSweep, PS_Scavenge, G1_Young_Generation, G1_Old_Generation] + operator_name: + name_override: name + description: The operator name. type: string - enum: [ completed, failed ] record: description: The number of records received in, sent out or dropped due to arriving late. type: string - enum: [ in, out, dropped ] + enum: [in, out, dropped] metrics: - flink.jvm.cpu.load: - enabled: true - description: The CPU usage of the JVM for a jobmanager or taskmanager. - unit: "%" - gauge: - value_type: double - input_type: string - attributes: [] - flink.jvm.cpu.time: + flink.job.checkpoint.count: enabled: true - description: The CPU time used by the JVM for a jobmanager or taskmanager. - unit: ns + stability: development + description: The number of checkpoints completed or failed. + unit: "{checkpoints}" sum: monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] - flink.jvm.memory.heap.used: + attributes: [checkpoint] + flink.job.checkpoint.in_progress: enabled: true - description: The amount of heap memory currently used. - unit: By + stability: development + description: The number of checkpoints in progress. + unit: "{checkpoints}" sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.jvm.memory.heap.committed: + flink.job.last_checkpoint.size: enabled: true - description: The amount of heap memory guaranteed to be available to the JVM. + stability: development + description: The total size of the last checkpoint. unit: By sum: monotonic: false @@ -95,69 +90,83 @@ metrics: value_type: int input_type: string attributes: [] - flink.jvm.memory.heap.max: + flink.job.last_checkpoint.time: enabled: true - description: The maximum amount of heap memory that can be used for memory management. - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative + stability: development + description: The end to end duration of the last checkpoint. + unit: ms + gauge: value_type: int input_type: string attributes: [] - flink.jvm.memory.nonheap.used: + flink.job.restart.count: enabled: true - description: The amount of non-heap memory currently used. - unit: By + stability: development + description: The total number of restarts since this job was submitted, including full restarts and fine-grained restarts. + unit: "{restarts}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.jvm.memory.nonheap.committed: + flink.jvm.class_loader.classes_loaded: enabled: true - description: The amount of non-heap memory guaranteed to be available to the JVM. - unit: By + stability: development + description: The total number of classes loaded since the start of the JVM. + unit: "{classes}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.jvm.memory.nonheap.max: + flink.jvm.cpu.load: enabled: true - description: The maximum amount of non-heap memory that can be used for memory management. - unit: By + stability: development + description: The CPU usage of the JVM for a jobmanager or taskmanager. + unit: "%" + gauge: + value_type: double + input_type: string + attributes: [] + flink.jvm.cpu.time: + enabled: true + stability: development + description: The CPU time used by the JVM for a jobmanager or taskmanager. + unit: ns sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.jvm.memory.metaspace.used: + flink.jvm.gc.collections.count: enabled: true - description: The amount of memory currently used in the Metaspace memory pool. - unit: By + stability: development + description: The total number of collections that have occurred. + unit: "{collections}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] - flink.jvm.memory.metaspace.committed: + attributes: [garbage_collector_name] + flink.jvm.gc.collections.time: enabled: true - description: The amount of memory guaranteed to be available to the JVM in the Metaspace memory pool. - unit: By + stability: development + description: The total time spent performing garbage collection. + unit: ms sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] - flink.jvm.memory.metaspace.max: + attributes: [garbage_collector_name] + flink.jvm.memory.direct.total_capacity: enabled: true - description: The maximum amount of memory that can be used in the Metaspace memory pool. + stability: development + description: The total capacity of all buffers in the direct buffer pool. unit: By sum: monotonic: false @@ -167,6 +176,7 @@ metrics: attributes: [] flink.jvm.memory.direct.used: enabled: true + stability: development description: The amount of memory used by the JVM for the direct buffer pool. unit: By sum: @@ -175,9 +185,10 @@ metrics: value_type: int input_type: string attributes: [] - flink.jvm.memory.direct.total_capacity: + flink.jvm.memory.heap.committed: enabled: true - description: The total capacity of all buffers in the direct buffer pool. + stability: development + description: The amount of heap memory guaranteed to be available to the JVM. unit: By sum: monotonic: false @@ -185,9 +196,10 @@ metrics: value_type: int input_type: string attributes: [] - flink.jvm.memory.mapped.used: + flink.jvm.memory.heap.max: enabled: true - description: The amount of memory used by the JVM for the mapped buffer pool. + stability: development + description: The maximum amount of heap memory that can be used for memory management. unit: By sum: monotonic: false @@ -195,9 +207,10 @@ metrics: value_type: int input_type: string attributes: [] - flink.jvm.memory.mapped.total_capacity: + flink.jvm.memory.heap.used: enabled: true - description: The number of buffers in the mapped buffer pool. + stability: development + description: The amount of heap memory currently used. unit: By sum: monotonic: false @@ -205,9 +218,10 @@ metrics: value_type: int input_type: string attributes: [] - flink.memory.managed.used: + flink.jvm.memory.mapped.total_capacity: enabled: true - description: The amount of managed memory currently used. + stability: development + description: The number of buffers in the mapped buffer pool. unit: By sum: monotonic: false @@ -215,9 +229,10 @@ metrics: value_type: int input_type: string attributes: [] - flink.memory.managed.total: + flink.jvm.memory.mapped.used: enabled: true - description: The total amount of managed memory. + stability: development + description: The amount of memory used by the JVM for the mapped buffer pool. unit: By sum: monotonic: false @@ -225,67 +240,65 @@ metrics: value_type: int input_type: string attributes: [] - flink.jvm.threads.count: + flink.jvm.memory.metaspace.committed: enabled: true - description: The total number of live threads. - unit: "{threads}" + stability: development + description: The amount of memory guaranteed to be available to the JVM in the Metaspace memory pool. + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.jvm.gc.collections.count: + flink.jvm.memory.metaspace.max: enabled: true - description: The total number of collections that have occurred. - unit: "{collections}" + stability: development + description: The maximum amount of memory that can be used in the Metaspace memory pool. + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ garbage_collector_name ] - flink.jvm.gc.collections.time: + attributes: [] + flink.jvm.memory.metaspace.used: enabled: true - description: The total time spent performing garbage collection. - unit: ms + stability: development + description: The amount of memory currently used in the Metaspace memory pool. + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ garbage_collector_name ] - flink.jvm.class_loader.classes_loaded: + attributes: [] + flink.jvm.memory.nonheap.committed: enabled: true - description: The total number of classes loaded since the start of the JVM. - unit: "{classes}" + stability: development + description: The amount of non-heap memory guaranteed to be available to the JVM. + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.job.restart.count: + flink.jvm.memory.nonheap.max: enabled: true - description: The total number of restarts since this job was submitted, including full restarts and fine-grained restarts. - unit: "{restarts}" + stability: development + description: The maximum amount of non-heap memory that can be used for memory management. + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.job.last_checkpoint.time: - enabled: true - description: The end to end duration of the last checkpoint. - unit: ms - gauge: - value_type: int - input_type: string - attributes: [] - flink.job.last_checkpoint.size: + flink.jvm.memory.nonheap.used: enabled: true - description: The total size of the last checkpoint. + stability: development + description: The amount of non-heap memory currently used. unit: By sum: monotonic: false @@ -293,38 +306,42 @@ metrics: value_type: int input_type: string attributes: [] - flink.job.checkpoint.count: + flink.jvm.threads.count: enabled: true - description: The number of checkpoints completed or failed. - unit: "{checkpoints}" + stability: development + description: The total number of live threads. + unit: "{threads}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ checkpoint ] - flink.job.checkpoint.in_progress: + attributes: [] + flink.memory.managed.total: enabled: true - description: The number of checkpoints in progress. - unit: "{checkpoints}" + stability: development + description: The total amount of managed memory. + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string attributes: [] - flink.task.record.count: + flink.memory.managed.used: enabled: true - description: The number of records a task has. - unit: "{records}" + stability: development + description: The amount of managed memory currently used. + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ record ] + attributes: [] flink.operator.record.count: enabled: true + stability: development description: The number of records an operator has. unit: "{records}" sum: @@ -332,9 +349,10 @@ metrics: aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ operator_name, record ] + attributes: [operator_name, record] flink.operator.watermark.output: enabled: true + stability: development description: The last watermark this operator has emitted. unit: ms sum: @@ -342,6 +360,18 @@ metrics: aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ operator_name ] + attributes: [operator_name] + flink.task.record.count: + enabled: true + stability: development + description: The number of records a task has. + unit: "{records}" + sum: + monotonic: true + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [record] + tests: - config: \ No newline at end of file + config: diff --git a/metric-metadata/fluentforwardreceiver.yaml b/metric-metadata/fluentforwardreceiver.yaml index 7434aca..82a3306 100644 --- a/metric-metadata/fluentforwardreceiver.yaml +++ b/metric-metadata/fluentforwardreceiver.yaml @@ -13,23 +13,26 @@ tests: telemetry: metrics: - fluent_opened_connections: + fluent_closed_connections: enabled: true - description: Number of connections opened to the fluentforward receiver + description: Number of connections closed to the fluentforward receiver + stability: development unit: "1" sum: value_type: int monotonic: - fluent_closed_connections: + fluent_events_parsed: enabled: true - description: Number of connections closed to the fluentforward receiver + description: Number of Fluent events parsed successfully + stability: development unit: "1" sum: value_type: int monotonic: - fluent_events_parsed: + fluent_opened_connections: enabled: true - description: Number of Fluent events parsed successfully + description: Number of connections opened to the fluentforward receiver + stability: development unit: "1" sum: value_type: int @@ -37,6 +40,7 @@ telemetry: fluent_parse_failures: enabled: true description: Number of times Fluent messages failed to be decoded + stability: development unit: "1" sum: value_type: int @@ -44,6 +48,7 @@ telemetry: fluent_records_generated: enabled: true description: Number of log records generated from Fluent forward input + stability: development unit: "1" sum: value_type: int diff --git a/metric-metadata/gcp.yaml b/metric-metadata/gcp.yaml index 3026c63..8c80795 100644 --- a/metric-metadata/gcp.yaml +++ b/metric-metadata/gcp.yaml @@ -3,46 +3,26 @@ type: resourcedetectionprocessor/gcp parent: resourcedetection resource_attributes: - host.name: - description: The host.name - type: string - enabled: true - host.id: - description: The host.id - type: string - enabled: true - host.type: - description: The host.type + cloud.account.id: + description: The cloud.account.id type: string enabled: true - cloud.provider: - description: The cloud.provider + cloud.availability_zone: + description: The cloud.availability_zone type: string enabled: true cloud.platform: description: The cloud.platform type: string enabled: true - cloud.account.id: - description: The cloud.account.id + cloud.provider: + description: The cloud.provider type: string enabled: true cloud.region: description: The cloud.region type: string enabled: true - cloud.availability_zone: - description: The cloud.availability_zone - type: string - enabled: true - faas.name: - description: faas.name - type: string - enabled: true - faas.version: - description: The faas.version - type: string - enabled: true faas.id: description: The faas.id. type: string @@ -51,8 +31,12 @@ resource_attributes: description: The faas.instance type: string enabled: true - k8s.cluster.name: - description: The k8s.cluster.name + faas.name: + description: faas.name + type: string + enabled: true + faas.version: + description: The faas.version type: string enabled: true gcp.cloud_run.job.execution: @@ -63,23 +47,39 @@ resource_attributes: description: The Job execution task index type: string enabled: true - gcp.gce.instance.name: - description: The name of the GCE instance. - type: string - enabled: false gcp.gce.instance.hostname: description: The hostname of the GCE instance. type: string enabled: false + gcp.gce.instance.name: + description: The name of the GCE instance. + type: string + enabled: false gcp.gce.instance_group_manager.name: description: The name of an instanceGroupManager. type: string enabled: true + gcp.gce.instance_group_manager.region: + description: The region of a regional instanceGroupManager. + type: string + enabled: true gcp.gce.instance_group_manager.zone: description: The zone of a zonal instanceGroupManager. type: string enabled: true - gcp.gce.instance_group_manager.region: - description: The region of a regional instanceGroupManager. + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The host.name + type: string + enabled: true + host.type: + description: The host.type + type: string + enabled: true + k8s.cluster.name: + description: The k8s.cluster.name type: string enabled: true diff --git a/metric-metadata/geoipprocessor.yaml b/metric-metadata/geoipprocessor.yaml index 5048603..48de673 100644 --- a/metric-metadata/geoipprocessor.yaml +++ b/metric-metadata/geoipprocessor.yaml @@ -1,5 +1,11 @@ +display_name: GeoIP Processor type: geoip +description: | + The geoIP processor `geoipprocessor` enhances the attributes of a span, log, or metric by appending information about + the geographical location of an IP address. + + status: class: processor stability: diff --git a/metric-metadata/githubreceiver.yaml b/metric-metadata/githubreceiver.yaml index bbb6bc5..ce54d19 100644 --- a/metric-metadata/githubreceiver.yaml +++ b/metric-metadata/githubreceiver.yaml @@ -1,6 +1,6 @@ type: github -sem_conv_version: 1.27.0 +sem_conv_version: 1.38.0 status: class: receiver @@ -12,22 +12,37 @@ status: active: [adrielp, crobert-1, TylerHelmuth] resource_attributes: - organization.name: + vcs.owner.name: enabled: true - description: VCS Organization + description: The group owner within the version control system type: string - vcs.vendor.name: + vcs.provider.name: enabled: true - description: The name of the VCS vendor/provider (ie. GitHub) + description: The name of the version control system provider type: string attributes: - vcs.repository.url.full: - description: The canonical URL of the repository providing the complete HTTPS address. + vcs.change.state: + description: The state of a change (pull request) type: string - vcs.repository.name: - description: The name of the VCS repository. + enum: + - open + - merged + vcs.line_change.type: + description: The type of line change being measured on a ref (branch). + type: string + enum: + - added + - removed + vcs.ref.base.name: + description: The name of the VCS base reference (branch/tag) for comparison. type: string + vcs.ref.base.type: + description: The type of the base reference (branch, tag). + type: string + enum: + - branch + - tag vcs.ref.head.name: description: The name of the VCS head reference (branch). type: string @@ -37,96 +52,106 @@ attributes: enum: - branch - tag - vcs.change.state: - description: The state of a change (pull request) + vcs.ref.type: + description: The type of the reference in the repository. type: string enum: - - open - - merged + - branch + - tag + vcs.repository.name: + description: The name of the VCS repository. + type: string + vcs.repository.url.full: + description: The canonical URL of the repository providing the complete HTTPS address. + type: string vcs.revision_delta.direction: description: The type of revision comparison. type: string enum: - ahead - behind - vcs.line_change.type: - description: The type of line change being measured on a ref (branch). - type: string - enum: - - added - - removed metrics: - vcs.repository.count: - enabled: true - description: The number of repositories in an organization. - unit: "{repository}" - gauge: - value_type: int - attributes: [] - vcs.ref.count: + vcs.change.count: + description: The number of changes (pull requests) in a repository, categorized by their state (either open or merged). enabled: true - description: The number of refs of type branch in a repository. - unit: "{ref}" + stability: development gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.type] - vcs.ref.time: + unit: "{change}" + attributes: [vcs.repository.url.full, vcs.change.state, vcs.repository.name] + vcs.change.duration: enabled: true - description: Time a ref (branch) created from the default branch (trunk) has existed. The `vcs.ref.head.type` attribute will always be `branch`. + description: The time duration a change (pull request/merge request/changelist) has been in an open state. + stability: development unit: s gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type] - vcs.ref.revisions_delta: + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.change.state] + vcs.change.time_to_approval: enabled: true - description: The number of revisions (commits) a ref (branch) is ahead/behind the branch from trunk (default). - unit: "{revision}" + description: The amount of time it took a change (pull request) to go from open to approved. + stability: development + unit: s gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type, vcs.revision_delta.direction] - vcs.ref.lines_delta: + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name] + vcs.change.time_to_merge: enabled: true - description: The number of lines added/removed in a ref (branch) relative to the default branch (trunk). - unit: "{line}" + description: The amount of time it took a change (pull request) to go from open to merged. + stability: development + unit: s gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type, vcs.line_change.type] + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name] vcs.contributor.count: enabled: false description: The number of unique contributors to a repository. + stability: development unit: "{contributor}" gauge: value_type: int attributes: [vcs.repository.url.full, vcs.repository.name] - vcs.change.duration: + vcs.ref.count: enabled: true - description: The time duration a change (pull request/merge request/changelist) has been in an open state. - unit: s + description: The number of refs of type branch in a repository. + stability: development + unit: "{ref}" gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.change.state] - vcs.change.time_to_merge: + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.type] + vcs.ref.lines_delta: enabled: true - description: The amount of time it took a change (pull request) to go from open to merged. - unit: s + description: The number of lines added/removed in a ref (branch) relative to the default branch (trunk). + stability: development + unit: "{line}" gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name] - vcs.change.time_to_approval: + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type, vcs.ref.base.name, vcs.ref.base.type, vcs.line_change.type] + vcs.ref.revisions_delta: enabled: true - description: The amount of time it took a change (pull request) to go from open to approved. + description: The number of revisions (commits) a ref (branch) is ahead/behind the branch from trunk (default). + stability: development + unit: "{revision}" + gauge: + value_type: int + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type, vcs.ref.base.name, vcs.ref.base.type, vcs.revision_delta.direction] + vcs.ref.time: + enabled: true + description: Time a ref (branch) created from the default branch (trunk) has existed. The `vcs.ref.type` attribute will always be `branch`. + stability: development unit: s gauge: value_type: int - attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name] - vcs.change.count: - description: The number of changes (pull requests) in a repository, categorized by their state (either open or merged). + attributes: [vcs.repository.url.full, vcs.repository.name, vcs.ref.head.name, vcs.ref.head.type] + vcs.repository.count: enabled: true + description: The number of repositories in an organization. + stability: development + unit: "{repository}" gauge: value_type: int - unit: "{change}" - attributes: [vcs.repository.url.full, vcs.change.state, vcs.repository.name] + attributes: [] tests: config: diff --git a/metric-metadata/gitlabreceiver.yaml b/metric-metadata/gitlabreceiver.yaml index 4df4990..d502e8a 100644 --- a/metric-metadata/gitlabreceiver.yaml +++ b/metric-metadata/gitlabreceiver.yaml @@ -3,10 +3,10 @@ type: gitlab status: class: receiver stability: - development: [traces] - distributions: [] + alpha: [traces] + distributions: [contrib] codeowners: - active: [adrielp, atoulme] + active: [adrielp, atoulme, niwoerner] tests: config: webhook: diff --git a/metric-metadata/golden.yaml b/metric-metadata/golden.yaml index 922209f..6552354 100644 --- a/metric-metadata/golden.yaml +++ b/metric-metadata/golden.yaml @@ -1,10 +1,8 @@ type: golden status: - disable_codecov_badge: true - class: pkg + class: cmd stability: - alpha: [ traces, metrics, logs, profiles ] + alpha: [metrics] codeowners: active: [atoulme] - emeritus: [djaglowski] diff --git a/metric-metadata/googleclientauthextension.yaml b/metric-metadata/googleclientauthextension.yaml index d31e0e4..e484f3d 100644 --- a/metric-metadata/googleclientauthextension.yaml +++ b/metric-metadata/googleclientauthextension.yaml @@ -1,9 +1,13 @@ +display_name: Google Client Auth Extension type: googleclientauth +description: This extension provides Google OAuth2 Client Credentials and Metadata for gRPC and http based exporters. + status: class: extension stability: - alpha: [extension] + beta: [extension] + distributions: [contrib] codeowners: active: [dashpole, aabmass, braydonk, jsuereth, psx95, ridwanmsharif] diff --git a/metric-metadata/googlecloudexporter.yaml b/metric-metadata/googlecloudexporter.yaml index e201b59..d626e4a 100644 --- a/metric-metadata/googlecloudexporter.yaml +++ b/metric-metadata/googlecloudexporter.yaml @@ -1,4 +1,5 @@ type: googlecloud +display_name: Google Cloud Exporter status: class: exporter diff --git a/metric-metadata/googlecloudlogentryencodingextension.yaml b/metric-metadata/googlecloudlogentryencodingextension.yaml index 5eb16ee..ccd1601 100644 --- a/metric-metadata/googlecloudlogentryencodingextension.yaml +++ b/metric-metadata/googlecloudlogentryencodingextension.yaml @@ -1,5 +1,10 @@ +display_name: Google Cloud LogEntry Encoding Extension type: googlecloudlogentry_encoding +description: > + This extension can be used to unmarshall a + [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) message type. + status: disable_codecov_badge: true class: extension @@ -7,7 +12,8 @@ status: alpha: [ extension ] distributions: [ contrib ] codeowners: - active: [ alexvanboxel ] + active: [ constanca-m ] + emeritus: [ alexvanboxel ] tests: config: diff --git a/metric-metadata/googlecloudpubsubexporter.yaml b/metric-metadata/googlecloudpubsubexporter.yaml index 49a90e1..31c5b24 100644 --- a/metric-metadata/googlecloudpubsubexporter.yaml +++ b/metric-metadata/googlecloudpubsubexporter.yaml @@ -1,4 +1,5 @@ type: googlecloudpubsub +display_name: Google Cloud Pub/Sub Exporter status: class: exporter diff --git a/metric-metadata/googlecloudpubsubpushreceiver.yaml b/metric-metadata/googlecloudpubsubpushreceiver.yaml new file mode 100644 index 0000000..cfdbe8e --- /dev/null +++ b/metric-metadata/googlecloudpubsubpushreceiver.yaml @@ -0,0 +1,53 @@ +type: googlecloudpubsubpush + +status: + class: receiver + stability: + development: [logs] + codeowners: + active: [axw, constanca-m] + +tests: + # start requires an encoding extension to exist + skip_lifecycle: true + # requires google credentials for the storage client + skip_shutdown: true + +telemetry: + metrics: + gcp.pubsub.input.uncompressed.size: + stability: development + enabled: true + description: Size of uncompressed incoming log data in bytes (either direct Pub/Sub message payloads or GCS file content retrieved from event notifications). + unit: By + histogram: + value_type: double + bucket_boundaries: [1024, 2560, 5120, 10240, 25600, 51200, 102400, 256000, 512000, 1048576, 2621440, 5242880, 10485760, 26214400, 52428800, 104857600, 262144000, 536870912, 1073741824, 1610612736, 2147483648] + attributes: + - gcp.gcs.bucket.name + http.server.request.active.count: + stability: development + enabled: true + description: Number of active requests. + unit: "{count}" + sum: + value_type: int + monotonic: false + http.server.request.duration: + stability: development + enabled: true + description: Duration of requests in seconds. + unit: s + histogram: + value_type: double + bucket_boundaries: [ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10, 15, 25, 50, 75, 100, 120, 180, 240, 300 ] + attributes: + - http.response.status_code + +attributes: + gcp.gcs.bucket.name: + description: Bucket name. + type: string + http.response.status_code: + description: HTTP response status code. + type: int diff --git a/metric-metadata/googlecloudpubsubreceiver.yaml b/metric-metadata/googlecloudpubsubreceiver.yaml index dc839a3..6faa6f0 100644 --- a/metric-metadata/googlecloudpubsubreceiver.yaml +++ b/metric-metadata/googlecloudpubsubreceiver.yaml @@ -10,27 +10,29 @@ status: telemetry: metrics: - receiver.googlecloudpubsub.stream_restarts: + receiver.googlecloudpubsub.encoding_error: enabled: true - description: Number of times the stream (re)starts due to a Pub/Sub servers connection close + stability: development + description: Number of times a message couldn't be decoded by the configured encoder unit: "1" sum: value_type: int monotonic: true extended_documentation: | - The receiver uses the Google Cloud Pub/Sub StreamingPull API and keeps a open connection. The Pub/Sub servers - recurrently close the connection after a time period to avoid a long-running sticky connection. This metric - counts the number of the resets that occurred during the lifetime of the container. - receiver.googlecloudpubsub.encoding_error: + The receiver reads messages from Google Cloud Pub/Sub and tries to decode the message using the configured + encoder. Each time a message fails to decoded the counter is increased. + receiver.googlecloudpubsub.stream_restarts: enabled: true - description: Number of times a message couldn't be decoded by the configured encoder + stability: development + description: Number of times the stream (re)starts due to a Pub/Sub servers connection close unit: "1" sum: value_type: int monotonic: true extended_documentation: | - The receiver reads messages from Google Cloud Pub/Sub and tries to decode the message using the configured - encoder. Each time a message fails to decoded the counter is increased. + The receiver uses the Google Cloud Pub/Sub StreamingPull API and keeps a open connection. The Pub/Sub servers + recurrently close the connection after a time period to avoid a long-running sticky connection. This metric + counts the number of the resets that occurred during the lifetime of the container. tests: config: @@ -43,4 +45,3 @@ tests: ignore: # See https://github.com/census-instrumentation/opencensus-go/issues/1191 for more information. top: go.opencensus.io/stats/view.(*worker).start - diff --git a/metric-metadata/googlecloudstorageexporter.yaml b/metric-metadata/googlecloudstorageexporter.yaml new file mode 100644 index 0000000..77e2db4 --- /dev/null +++ b/metric-metadata/googlecloudstorageexporter.yaml @@ -0,0 +1,20 @@ +type: googlecloudstorage +display_name: Google Cloud Storage Exporter + +status: + class: exporter + distributions: [contrib] + stability: + alpha: [logs] + development: [traces] + codeowners: + active: [constanca-m, braydonk] + seeking_new: true + +tests: + # we skip the generated tests since and implement our own, as we make requests to google + # API on new GCS exporter + skip_shutdown: true + # we skip the generated tests since and implement our own, as we make requests to google + # API on new GCS exporter + skip_lifecycle: true diff --git a/metric-metadata/googlemanagedprometheusexporter.yaml b/metric-metadata/googlemanagedprometheusexporter.yaml index 5d36976..d91b749 100644 --- a/metric-metadata/googlemanagedprometheusexporter.yaml +++ b/metric-metadata/googlemanagedprometheusexporter.yaml @@ -1,4 +1,5 @@ type: googlemanagedprometheus +display_name: Google Cloud Managed Prometheus Exporter status: class: exporter diff --git a/metric-metadata/grafanacloudconnector.yaml b/metric-metadata/grafanacloudconnector.yaml index 91a34a2..247acce 100644 --- a/metric-metadata/grafanacloudconnector.yaml +++ b/metric-metadata/grafanacloudconnector.yaml @@ -1,4 +1,5 @@ type: grafanacloud +display_name: Grafana Cloud Connector status: class: connector @@ -15,24 +16,27 @@ tests: telemetry: metrics: - grafanacloud_host_count: - description: Number of unique hosts + grafanacloud_datapoint_count: + description: Number of datapoints sent to Grafana Cloud unit: "1" enabled: true - gauge: + stability: development + sum: value_type: int - async: true + monotonic: true grafanacloud_flush_count: description: Number of metrics flushes unit: "1" enabled: true + stability: development sum: value_type: int monotonic: true - grafanacloud_datapoint_count: - description: Number of datapoints sent to Grafana Cloud + grafanacloud_host_count: + description: Number of unique hosts unit: "1" enabled: true - sum: + stability: development + gauge: value_type: int - monotonic: true + async: true diff --git a/metric-metadata/groupbyattrsprocessor.yaml b/metric-metadata/groupbyattrsprocessor.yaml index 1cfd401..da8a639 100644 --- a/metric-metadata/groupbyattrsprocessor.yaml +++ b/metric-metadata/groupbyattrsprocessor.yaml @@ -1,5 +1,12 @@ +display_name: Group by Attributes Processor type: groupbyattrs +description: | + This processor re-associates spans, log records and metric datapoints to a *Resource* that matches with the specified + attributes. As a result, all spans, log records or metric datapoints with the same values for the specified attributes + are "grouped" under the same *Resource*. + + status: class: processor stability: @@ -7,55 +14,55 @@ status: distributions: [contrib, k8s] warnings: [] codeowners: - active: [rnishtala-sumo, echlebek, amdprophet] + active: [rnishtala-sumo, amdprophet] + emeritus: [echlebek] tests: config: telemetry: metrics: - processor_groupbyattrs_num_grouped_spans: - enabled: true - description: Number of spans that had attributes grouped - unit: "1" - sum: - value_type: int - monotonic: true - processor_groupbyattrs_num_non_grouped_spans: + processor_groupbyattrs_log_groups: enabled: true - description: Number of spans that did not have attributes grouped + description: Distribution of groups extracted for logs + stability: development unit: "1" - sum: + histogram: value_type: int - monotonic: true - processor_groupbyattrs_span_groups: + processor_groupbyattrs_metric_groups: enabled: true - description: Distribution of groups extracted for spans + description: Distribution of groups extracted for metrics + stability: development unit: "1" histogram: value_type: int processor_groupbyattrs_num_grouped_logs: enabled: true description: Number of logs that had attributes grouped + stability: development unit: "1" sum: value_type: int monotonic: true - processor_groupbyattrs_num_non_grouped_logs: + processor_groupbyattrs_num_grouped_metrics: enabled: true - description: Number of logs that did not have attributes grouped + description: Number of metrics that had attributes grouped + stability: development unit: "1" sum: value_type: int monotonic: true - processor_groupbyattrs_log_groups: + processor_groupbyattrs_num_grouped_spans: enabled: true - description: Distribution of groups extracted for logs + description: Number of spans that had attributes grouped + stability: development unit: "1" - histogram: + sum: value_type: int - processor_groupbyattrs_num_grouped_metrics: + monotonic: true + processor_groupbyattrs_num_non_grouped_logs: enabled: true - description: Number of metrics that had attributes grouped + description: Number of logs that did not have attributes grouped + stability: development unit: "1" sum: value_type: int @@ -63,13 +70,23 @@ telemetry: processor_groupbyattrs_num_non_grouped_metrics: enabled: true description: Number of metrics that did not have attributes grouped + stability: development unit: "1" sum: value_type: int monotonic: true - processor_groupbyattrs_metric_groups: + processor_groupbyattrs_num_non_grouped_spans: enabled: true - description: Distribution of groups extracted for metrics + description: Number of spans that did not have attributes grouped + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + processor_groupbyattrs_span_groups: + enabled: true + description: Distribution of groups extracted for spans + stability: development unit: "1" histogram: value_type: int diff --git a/metric-metadata/groupbytraceprocessor.yaml b/metric-metadata/groupbytraceprocessor.yaml index ec71ffe..baab31e 100644 --- a/metric-metadata/groupbytraceprocessor.yaml +++ b/metric-metadata/groupbytraceprocessor.yaml @@ -1,3 +1,5 @@ +display_name: Group by Trace Processor + type: groupbytrace status: @@ -7,6 +9,7 @@ status: distributions: [contrib, k8s] warnings: [Statefulness] codeowners: + active: [iblancasa] emeritus: [jpkrohling] seeking_new: true tests: @@ -22,32 +25,53 @@ telemetry: unit: "1" gauge: value_type: int + stability: development + processor_groupbytrace_event_latency: + enabled: true + description: How long the queue events are taking to be processed + unit: ms + histogram: + value_type: int + bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000] + stability: development + processor_groupbytrace_incomplete_releases: + enabled: true + description: Releases that are suspected to have been incomplete + unit: "{releases}" + sum: + value_type: int + monotonic: true + stability: development processor_groupbytrace_num_events_in_queue: enabled: true description: Number of events currently in the queue unit: "1" gauge: value_type: int + stability: development processor_groupbytrace_num_traces_in_memory: enabled: true description: Number of traces currently in the in-memory storage unit: "1" gauge: value_type: int - processor_groupbytrace_traces_evicted: + stability: development + processor_groupbytrace_spans_released: enabled: true - description: Traces evicted from the internal buffer + description: Spans released to the next consumer unit: "1" sum: value_type: int monotonic: true - processor_groupbytrace_spans_released: + stability: development + processor_groupbytrace_traces_evicted: enabled: true - description: Spans released to the next consumer + description: Traces evicted from the internal buffer unit: "1" sum: value_type: int monotonic: true + stability: development processor_groupbytrace_traces_released: enabled: true description: Traces released to the next consumer @@ -55,19 +79,4 @@ telemetry: sum: value_type: int monotonic: true - processor_groupbytrace_incomplete_releases: - enabled: true - description: Releases that are suspected to have been incomplete - unit: "{releases}" - sum: - value_type: int - monotonic: true - processor_groupbytrace_event_latency: - enabled: true - description: How long the queue events are taking to be processed - unit: ms - histogram: - value_type: int - bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000] - - + stability: development diff --git a/metric-metadata/haproxyreceiver.yaml b/metric-metadata/haproxyreceiver.yaml index 513091d..78494e1 100644 --- a/metric-metadata/haproxyreceiver.yaml +++ b/metric-metadata/haproxyreceiver.yaml @@ -36,40 +36,25 @@ attributes: metrics: - haproxy.connections.rate: - description: Number of connections over the last elapsed second (frontend). Corresponds to HAProxy's `conn_rate` metric. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{connections}" - haproxy.sessions.count: - description: Current sessions. Corresponds to HAProxy's `scur` metric. - enabled: true + haproxy.active: + description: Number of active servers (backend) or server is active (server). Corresponds to HAProxy's `act` metric. + stability: development + enabled: false gauge: value_type: int input_type: string - unit: "{sessions}" - haproxy.connections.total: - description: Cumulative number of connections (frontend). Corresponds to HAProxy's `conn_tot` metric. + unit: "{servers}" + haproxy.backup: + description: Number of backup servers (backend) or server is backup (server). Corresponds to HAProxy's `bck` metric. + stability: development enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{connections}" - haproxy.server_selected.total: - description: Number of times a server was selected, either for new sessions or when re-dispatching. Corresponds to HAProxy's `lbtot` metric. - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: true + gauge: value_type: int input_type: string - unit: "{selections}" + unit: "{servers}" haproxy.bytes.input: description: Bytes in. Corresponds to HAProxy's `bin` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -79,6 +64,7 @@ metrics: unit: by haproxy.bytes.output: description: Bytes out. Corresponds to HAProxy's `bout` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -88,6 +74,7 @@ metrics: unit: by haproxy.clients.canceled: description: Number of data transfers aborted by the client. Corresponds to HAProxy's `cli_abrt` metric + stability: development enabled: false sum: aggregation_temporality: cumulative @@ -97,6 +84,7 @@ metrics: unit: "{cancellations}" haproxy.compression.bypass: description: Number of bytes that bypassed the HTTP compressor (CPU/BW limit). Corresponds to HAProxy's `comp_byp` metric. + stability: development enabled: false sum: aggregation_temporality: cumulative @@ -104,8 +92,19 @@ metrics: value_type: int input_type: string unit: by + haproxy.compression.count: + description: Number of HTTP responses that were compressed. Corresponds to HAProxy's `comp_rsp` metric. + stability: development + enabled: false + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{responses}" haproxy.compression.input: description: Number of HTTP response bytes fed to the compressor. Corresponds to HAProxy's `comp_in` metric. + stability: development enabled: false sum: aggregation_temporality: cumulative @@ -115,6 +114,7 @@ metrics: unit: by haproxy.compression.output: description: Number of HTTP response bytes emitted by the compressor. Corresponds to HAProxy's `comp_out` metric. + stability: development enabled: false sum: aggregation_temporality: cumulative @@ -122,35 +122,55 @@ metrics: value_type: int input_type: string unit: by - haproxy.compression.count: - description: Number of HTTP responses that were compressed. Corresponds to HAProxy's `comp_rsp` metric. + haproxy.connections.average_time: + description: Average connect time in ms over the 1024 last requests. Corresponds to HAProxy's `ctime` metric. + stability: development enabled: false + gauge: + value_type: double + input_type: string + unit: ms + haproxy.connections.errors: + description: Number of requests that encountered an error trying to connect to a backend server. The backend stat is the sum of the stat. Corresponds to HAProxy's `econ` metric + stability: development + enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{responses}" - haproxy.requests.denied: - description: Requests denied because of security concerns. Corresponds to HAProxy's `dreq` metric + unit: "{errors}" + haproxy.connections.rate: + description: Number of connections over the last elapsed second (frontend). Corresponds to HAProxy's `conn_rate` metric. + stability: development + enabled: true + gauge: + value_type: int + input_type: string + unit: "{connections}" + haproxy.connections.retries: + description: Number of times a connection to a server was retried. Corresponds to HAProxy's `wretr` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{requests}" - haproxy.responses.denied: - description: Responses denied because of security concerns. Corresponds to HAProxy's `dresp` metric - enabled: true + unit: "{retries}" + haproxy.connections.total: + description: Cumulative number of connections (frontend). Corresponds to HAProxy's `conn_tot` metric. + stability: development + enabled: false sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{responses}" + unit: "{connections}" haproxy.downtime: - description: Total downtime (in seconds). The value for the backend is the downtime for the whole backend, not the sum of the server downtime. Corresponds to HAProxy's `downtime` metric + description: Total downtime (in seconds). The value for the backend is the downtime for the whole backend, not the sum of the server downtime. Corresponds to HAProxy's `downtime` metric + stability: development enabled: false sum: aggregation_temporality: cumulative @@ -158,43 +178,65 @@ metrics: value_type: int input_type: string unit: s - haproxy.connections.errors: - description: Number of requests that encountered an error trying to connect to a backend server. The backend stat is the sum of the stat. Corresponds to HAProxy's `econ` metric - enabled: true + haproxy.failed_checks: + description: Number of failed checks. (Only counts checks failed when the server is up). Corresponds to HAProxy's `chkfail` metric. + stability: development + enabled: false sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{errors}" - haproxy.requests.errors: - description: Cumulative number of request errors. Corresponds to HAProxy's `ereq` metric. + unit: "{checks}" + haproxy.requests.average_time: + description: Average queue time in ms over the 1024 last requests. Corresponds to HAProxy's `qtime` metric. + stability: development + enabled: false + gauge: + value_type: double + input_type: string + unit: ms + haproxy.requests.denied: + description: Requests denied because of security concerns. Corresponds to HAProxy's `dreq` metric + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{errors}" - haproxy.responses.errors: - description: Cumulative number of response errors. Corresponds to HAProxy's `eresp` metric, `srv_abrt` will be counted here also. + unit: "{requests}" + haproxy.requests.errors: + description: Cumulative number of request errors. Corresponds to HAProxy's `ereq` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int + input_type: string unit: "{errors}" - haproxy.failed_checks: - description: Number of failed checks. (Only counts checks failed when the server is up). Corresponds to HAProxy's `chkfail` metric. - enabled: false + haproxy.requests.queued: + description: Current queued requests. For the backend this reports the number queued without a server assigned. Corresponds to HAProxy's `qcur` metric. + stability: development + enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{checks}" + unit: "{requests}" + haproxy.requests.rate: + description: HTTP requests per second over last elapsed second. Corresponds to HAProxy's `req_rate` metric. + stability: development + enabled: true + gauge: + value_type: double + input_type: string + unit: "{requests}" haproxy.requests.redispatched: description: Number of times a request was redispatched to another server. Corresponds to HAProxy's `wredis` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -204,6 +246,7 @@ metrics: unit: "{requests}" haproxy.requests.total: description: Total number of HTTP requests received. Corresponds to HAProxy's `req_tot`, `hrsp_1xx`, `hrsp_2xx`, `hrsp_3xx`, `hrsp_4xx`, `hrsp_5xx` and `hrsp_other` metrics. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -213,51 +256,90 @@ metrics: unit: "{requests}" attributes: - status_code - haproxy.connections.retries: - description: Number of times a connection to a server was retried. Corresponds to HAProxy's `wretr` metric. + haproxy.responses.average_time: + description: Average response time in ms over the 1024 last requests. Corresponds to HAProxy's `rtime` metric. + stability: development + enabled: false + gauge: + value_type: double + input_type: string + unit: ms + haproxy.responses.denied: + description: Responses denied because of security concerns. Corresponds to HAProxy's `dresp` metric + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{retries}" - haproxy.sessions.total: - description: Cumulative number of sessions. Corresponds to HAProxy's `stot` metric. - enabled: false + unit: "{responses}" + haproxy.responses.errors: + description: Cumulative number of response errors. Corresponds to HAProxy's `eresp` metric, `srv_abrt` will be counted here also. + stability: development + enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int - input_type: string - unit: "{sessions}" - haproxy.requests.queued: - description: Current queued requests. For the backend this reports the number queued without a server assigned. Corresponds to HAProxy's `qcur` metric. + unit: "{errors}" + haproxy.server_selected.total: + description: Number of times a server was selected, either for new sessions or when re-dispatching. Corresponds to HAProxy's `lbtot` metric. + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{requests}" - haproxy.requests.rate: - description: HTTP requests per second over last elapsed second. Corresponds to HAProxy's `req_rate` metric. - enabled: true - gauge: - value_type: double - input_type: string - unit: "{requests}" + unit: "{selections}" haproxy.sessions.average: description: Average total session time in ms over the last 1024 requests. Corresponds to HAProxy's `ttime` metric. + stability: development enabled: true gauge: value_type: double input_type: string unit: ms + haproxy.sessions.count: + description: Current sessions. Corresponds to HAProxy's `scur` metric. + stability: development + enabled: true + gauge: + value_type: int + input_type: string + unit: "{sessions}" + haproxy.sessions.limit: + description: Configured session limit. Corresponds to HAProxy's `slim` metric. + stability: development + enabled: false + gauge: + value_type: int + input_type: string + unit: "{sessions}" haproxy.sessions.rate: description: Number of sessions per second over last elapsed second. Corresponds to HAProxy's `rate` metric. + stability: development enabled: true gauge: value_type: double input_type: string unit: "{sessions}" + haproxy.sessions.total: + description: Cumulative number of sessions. Corresponds to HAProxy's `stot` metric. + stability: development + enabled: false + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{sessions}" + haproxy.weight: + description: Total effective weight (backend) or effective weight (server). Corresponds to HAProxy's `weight` metric. + stability: development + enabled: false + gauge: + value_type: int + input_type: string + unit: "1" diff --git a/metric-metadata/headerssetterextension.yaml b/metric-metadata/headerssetterextension.yaml index d62f93c..2fed90b 100644 --- a/metric-metadata/headerssetterextension.yaml +++ b/metric-metadata/headerssetterextension.yaml @@ -1,3 +1,4 @@ +display_name: Headers Setter Extension type: headers_setter status: diff --git a/metric-metadata/healthcheck.yaml b/metric-metadata/healthcheck.yaml new file mode 100644 index 0000000..d25236e --- /dev/null +++ b/metric-metadata/healthcheck.yaml @@ -0,0 +1,4 @@ +status: + disable_codecov_badge: true + codeowners: + active: [mwear, evan-bradley] diff --git a/metric-metadata/healthcheckextension.yaml b/metric-metadata/healthcheckextension.yaml index 30e83b2..4fb02d3 100644 --- a/metric-metadata/healthcheckextension.yaml +++ b/metric-metadata/healthcheckextension.yaml @@ -1,12 +1,14 @@ +display_name: Health Check Extension type: health_check status: class: extension stability: - beta: [extension] + alpha: [extension] distributions: [core, contrib, k8s] codeowners: - active: [] + active: [evan-bradley] + seeking_new: true tests: config: diff --git a/metric-metadata/healthcheckv2extension.yaml b/metric-metadata/healthcheckv2extension.yaml index 5a8aa3d..83434ea 100644 --- a/metric-metadata/healthcheckv2extension.yaml +++ b/metric-metadata/healthcheckv2extension.yaml @@ -1,3 +1,4 @@ +display_name: Health Check Extension V2 type: healthcheckv2 status: @@ -6,6 +7,6 @@ status: development: [extension] distributions: [] codeowners: - active: [mwear] - emeritus: [jpkrohling] + active: [evan-bradley] + emeritus: [jpkrohling, mwear] seeking_new: true diff --git a/metric-metadata/hetzner.yaml b/metric-metadata/hetzner.yaml new file mode 100644 index 0000000..2d86e52 --- /dev/null +++ b/metric-metadata/hetzner.yaml @@ -0,0 +1,34 @@ +type: hetznerdetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [Aneurysm9, dashpole, paulojmdias] + +resource_attributes: + cloud.availability_zone: + description: The cloud availability zone + type: string + enabled: true + cloud.provider: + description: The cloud.provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/honeycombmarkerexporter.yaml b/metric-metadata/honeycombmarkerexporter.yaml index 956f924..32a3e77 100644 --- a/metric-metadata/honeycombmarkerexporter.yaml +++ b/metric-metadata/honeycombmarkerexporter.yaml @@ -1,4 +1,5 @@ type: honeycombmarker +display_name: Honeycomb Marker Exporter status: class: exporter diff --git a/metric-metadata/hostmetricsreceiver.yaml b/metric-metadata/hostmetricsreceiver.yaml index cfc912b..38f5bf3 100644 --- a/metric-metadata/hostmetricsreceiver.yaml +++ b/metric-metadata/hostmetricsreceiver.yaml @@ -7,6 +7,6 @@ status: development: [logs] distributions: [core, contrib, k8s] codeowners: - active: [dmitryax, braydonk] + active: [dmitryax, braydonk, rogercoll] tests: config: diff --git a/metric-metadata/hostobserver.yaml b/metric-metadata/hostobserver.yaml index 924da26..c9afd75 100644 --- a/metric-metadata/hostobserver.yaml +++ b/metric-metadata/hostobserver.yaml @@ -1,3 +1,4 @@ +display_name: Host Observer Extension type: host_observer status: diff --git a/metric-metadata/httpcheckreceiver.yaml b/metric-metadata/httpcheckreceiver.yaml index 474126c..62f91a7 100644 --- a/metric-metadata/httpcheckreceiver.yaml +++ b/metric-metadata/httpcheckreceiver.yaml @@ -7,40 +7,73 @@ status: distributions: [contrib, k8s] warnings: [] codeowners: - active: [codeboten, VenuEmmadi] + active: [VenuEmmadi] + emeritus: [codeboten] + seeking_new: true resource_attributes: attributes: - http.url: - description: Full HTTP request URL. + error.message: + description: Error message recorded during check type: string - http.status_code: - description: HTTP response status code - type: int http.method: description: HTTP request method type: string http.status_class: description: HTTP response status class type: string - error.message: - description: Error message recorded during check + http.status_code: + description: HTTP response status code + type: int + http.tls.cn: + description: The commonName in the subject of the certificate. + type: string + http.tls.issuer: + description: The entity that issued the certificate. + type: string + http.tls.san: + description: The Subject Alternative Name of the certificate. + type: slice + http.url: + description: Full HTTP request URL. + type: string + network.transport: + description: OSI transport layer or inter-process communication method. + type: string + validation.type: + description: Type of validation performed (contains, json_path, size, regex) type: string metrics: - httpcheck.status: - description: 1 if the check resulted in status_code matching the status_class, otherwise 0. - enabled: true - sum: + httpcheck.client.connection.duration: + description: Time spent establishing TCP connection to the endpoint. + enabled: false + stability: development + gauge: value_type: int - aggregation_temporality: cumulative - monotonic: false - unit: "1" - attributes: [http.url, http.status_code, http.method, http.status_class] + unit: ms + attributes: [http.url, network.transport] + httpcheck.client.request.duration: + description: Time spent sending the HTTP request to the endpoint. + enabled: false + stability: development + gauge: + value_type: int + unit: ms + attributes: [http.url] + httpcheck.dns.lookup.duration: + description: Time spent performing DNS lookup for the endpoint. + enabled: false + stability: development + gauge: + value_type: int + unit: ms + attributes: [http.url] httpcheck.duration: description: Measures the duration of the HTTP check. enabled: true + stability: development gauge: value_type: int unit: ms @@ -48,9 +81,72 @@ metrics: httpcheck.error: description: Records errors occurring during HTTP check. enabled: true + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false unit: "{error}" attributes: [http.url, error.message] + httpcheck.response.duration: + description: Time spent receiving the HTTP response from the endpoint. + enabled: false + stability: development + gauge: + value_type: int + unit: ms + attributes: [http.url] + httpcheck.response.size: + description: Size of response body in bytes. + enabled: false + stability: development + gauge: + value_type: int + unit: "By" + attributes: [http.url] + httpcheck.status: + description: 1 if the check resulted in status_code matching the status_class, otherwise 0. + enabled: true + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "1" + attributes: [http.url, http.status_code, http.method, http.status_class] + httpcheck.tls.cert_remaining: + description: Time in seconds until certificate expiry, as specified by `NotAfter` field in the x.509 certificate. Negative values represent time in seconds since expiration. + enabled: false + stability: development + gauge: + value_type: int + unit: "s" + attributes: [http.url, http.tls.issuer, http.tls.cn, http.tls.san] + httpcheck.tls.handshake.duration: + description: Time spent performing TLS handshake with the endpoint. + enabled: false + stability: development + gauge: + value_type: int + unit: ms + attributes: [http.url] + httpcheck.validation.failed: + description: Number of response validations that failed. + enabled: false + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "{validation}" + attributes: [http.url, validation.type] + httpcheck.validation.passed: + description: Number of response validations that passed. + enabled: false + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "{validation}" + attributes: [http.url, validation.type] diff --git a/metric-metadata/httpforwarderextension.yaml b/metric-metadata/httpforwarderextension.yaml index 430e056..a33687c 100644 --- a/metric-metadata/httpforwarderextension.yaml +++ b/metric-metadata/httpforwarderextension.yaml @@ -1,5 +1,10 @@ +display_name: HTTP Forwarder Extension type: http_forwarder +description: | + This extension accepts HTTP requests, optionally adds headers to them and forwards them. + The RequestURIs of the original requests are preserved by the extension. + status: class: extension stability: diff --git a/metric-metadata/icmpcheckreceiver.yaml b/metric-metadata/icmpcheckreceiver.yaml new file mode 100644 index 0000000..f69ad31 --- /dev/null +++ b/metric-metadata/icmpcheckreceiver.yaml @@ -0,0 +1,56 @@ +type: icmpcheckreceiver + +status: + class: receiver + stability: + development: [metrics] + distributions: [] + codeowners: + active: [atoulme, jkoronaAtCisco] + +resource_attributes: + net.peer.ip: + enabled: true + description: The IP address of the host being pinged. + type: string + net.peer.name: + enabled: true + description: The hostname of the host being pinged. + type: string + +metrics: + ping.loss.ratio: + description: The percentage of lost packets. + enabled: true + stability: development + gauge: + value_type: double + unit: "%" + ping.rtt.avg: + description: Average round-trip time in milliseconds. + enabled: true + stability: development + gauge: + value_type: int + unit: ms + ping.rtt.max: + description: Maximum round-trip time in milliseconds. + enabled: true + stability: development + gauge: + value_type: int + unit: ms + ping.rtt.min: + description: Minimum round-trip time in milliseconds. + enabled: true + stability: development + gauge: + value_type: int + unit: ms + ping.rtt.stddev: + description: Standard deviation of round-trip time in milliseconds. + enabled: true + stability: development + gauge: + value_type: int + unit: ms diff --git a/metric-metadata/iisreceiver.yaml b/metric-metadata/iisreceiver.yaml index 605ac11..5da8c18 100644 --- a/metric-metadata/iisreceiver.yaml +++ b/metric-metadata/iisreceiver.yaml @@ -1,24 +1,28 @@ type: iis +tests: + goleak: + setup: "setupTestMain(m)" + status: class: receiver stability: beta: [metrics] distributions: [contrib] codeowners: - active: [Mrod1598, pjanotti] + active: [ishleenk17, Mrod1598, pjanotti] seeking_new: true - unsupported_platforms: [linux, darwin] + unsupported_platforms: [linux, darwin, (windows && arm64)] resource_attributes: - iis.site: - description: The site of the web server. - enabled: true - type: string iis.application_pool: description: The application pool, which is associated with worker processes of one or more applications. enabled: true type: string + iis.site: + description: The site of the web server. + enabled: true + type: string attributes: direction: @@ -40,46 +44,47 @@ attributes: - trace metrics: - iis.request.count: - description: Total number of requests of a given type. - unit: "{requests}" - sum: - monotonic: true - aggregation_temporality: cumulative + iis.application_pool.state: + description: The current status of the application pool (1 - Uninitialized, 2 - Initialized, 3 - Running, 4 - Disabling, 5 - Disabled, 6 - Shutdown Pending, 7 - Delete Pending). + unit: "{state}" + gauge: value_type: int enabled: true - attributes: [ request ] - iis.request.rejected: - description: Total number of requests rejected. - unit: "{requests}" - sum: - monotonic: true - aggregation_temporality: cumulative + stability: development + iis.application_pool.uptime: + description: The application pools uptime period since the last restart. + unit: "{ms}" + gauge: value_type: int enabled: true - iis.request.queue.count: - description: Current number of requests in the queue. - unit: "{requests}" + stability: development + iis.connection.active: + description: Number of active connections. + unit: "{connections}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - iis.request.queue.age.max: - description: Age of oldest request in the queue. - unit: ms - gauge: + stability: development + iis.connection.anonymous: + description: Number of connections established anonymously. + unit: "{connections}" + sum: + monotonic: true + aggregation_temporality: cumulative value_type: int enabled: true - iis.network.file.count: - description: Number of transmitted files. - unit: "{files}" + stability: development + iis.connection.attempt.count: + description: Total number of attempts to connect to the server. + unit: "{attempts}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - attributes: [ direction ] + stability: development iis.network.blocked: description: Number of bytes blocked due to bandwidth throttling. unit: By @@ -88,6 +93,17 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true + stability: development + iis.network.file.count: + description: Number of transmitted files. + unit: "{files}" + sum: + monotonic: true + aggregation_temporality: cumulative + value_type: int + enabled: true + stability: development + attributes: [direction] iis.network.io: description: Total amount of bytes sent and received. unit: By @@ -96,31 +112,43 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true - attributes: [ direction ] - iis.connection.attempt.count: - description: Total number of attempts to connect to the server. - unit: "{attempts}" + stability: development + attributes: [direction] + iis.request.count: + description: Total number of requests of a given type. + unit: "{requests}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - iis.connection.active: - description: Number of active connections. - unit: "{connections}" + stability: development + attributes: [request] + iis.request.queue.age.max: + description: Age of oldest request in the queue. + unit: ms + gauge: + value_type: int + enabled: true + stability: development + iis.request.queue.count: + description: Current number of requests in the queue. + unit: "{requests}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - iis.connection.anonymous: - description: Number of connections established anonymously. - unit: "{connections}" + stability: development + iis.request.rejected: + description: Total number of requests rejected. + unit: "{requests}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true + stability: development iis.thread.active: description: Current number of active threads. unit: "{threads}" @@ -129,21 +157,11 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true + stability: development iis.uptime: description: The amount of time the server has been up. unit: s gauge: value_type: int enabled: true - iis.application_pool.state: - description: The current state of the application pool. (0 - Starting, 1 - Started, 2 - Stopping, 3 - Stopped, 4 - Unknown) - unit: "{state}" - gauge: - value_type: int - enabled: false - iis.application_pool.uptime: - description: The application pools uptime period since the last restart. - unit: "{ms}" - gauge: - value_type: int - enabled: false \ No newline at end of file + stability: development diff --git a/metric-metadata/influxdbexporter.yaml b/metric-metadata/influxdbexporter.yaml index 5791e7c..78d4f75 100644 --- a/metric-metadata/influxdbexporter.yaml +++ b/metric-metadata/influxdbexporter.yaml @@ -1,4 +1,5 @@ type: influxdb +display_name: InfluxDB Exporter status: class: exporter diff --git a/metric-metadata/interfacesscraper.yaml b/metric-metadata/interfacesscraper.yaml new file mode 100644 index 0000000..5a62d2c --- /dev/null +++ b/metric-metadata/interfacesscraper.yaml @@ -0,0 +1,102 @@ +type: interfaces + +status: + class: scraper + stability: + development: [metrics] + distributions: [] + codeowners: + active: [] + +resource_attributes: + host.ip: + description: The IP address of the Cisco network device + type: string + enabled: true + hw.type: + description: Type of the physical hardware component + type: string + enabled: true + os.name: + description: The operating system type of the Cisco device + type: string + enabled: true + +attributes: + network.interface.description: + description: The description/alias of the network interface + type: string + network.interface.mac: + description: The MAC address of the network interface + type: string + network.interface.name: + description: The name of the network interface + type: string + network.interface.speed: + description: The configured speed of the network interface + type: string + network.io.direction: + description: Direction of flow of bytes/operations (receive or transmit) + type: string + enum: [receive, transmit] + network.packet.type: + description: Type of packet (multicast or broadcast) + type: string + enum: [multicast, broadcast] + +metrics: + system.network.errors: + enabled: true + stability: development + description: The number of errors encountered + unit: "{errors}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [network.io.direction, network.interface.description, network.interface.mac, network.interface.name, network.interface.speed] + + system.network.interface.status: + enabled: true + stability: development + description: Interface operational status (1 = up, 0 = down) + unit: "1" + gauge: + value_type: int + attributes: [network.interface.description, network.interface.mac, network.interface.name, network.interface.speed] + + system.network.io: + enabled: true + stability: development + description: The number of bytes transmitted and received + unit: By + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [network.io.direction, network.interface.description, network.interface.mac, network.interface.name, network.interface.speed] + + system.network.packet.count: + enabled: true + stability: development + description: The number of packets transmitted or received, categorized by type + unit: "{packets}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [network.packet.type, network.interface.description, network.interface.mac, network.interface.name, network.interface.speed] + + system.network.packet.dropped: + enabled: true + stability: development + description: The number of packets dropped + unit: "{packets}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [network.io.direction, network.interface.description, network.interface.mac, network.interface.name, network.interface.speed] + +tests: + config: diff --git a/metric-metadata/intervalprocessor.yaml b/metric-metadata/intervalprocessor.yaml index c2fa255..1b32e4a 100644 --- a/metric-metadata/intervalprocessor.yaml +++ b/metric-metadata/intervalprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Interval Processor type: interval status: @@ -7,6 +8,7 @@ status: distributions: [contrib, k8s] warnings: [Statefulness] codeowners: - active: [RichieSams, sh0rez] + active: [RichieSams] + emeritus: [tombrk] tests: config: diff --git a/metric-metadata/isolationforestprocessor.yaml b/metric-metadata/isolationforestprocessor.yaml new file mode 100644 index 0000000..4fc395e --- /dev/null +++ b/metric-metadata/isolationforestprocessor.yaml @@ -0,0 +1,16 @@ +display_name: Isolation Forest Processor +type: isolationforest + +description: | + The **Isolation Forest processor** adds inline, unsupervised anomaly detection to any OpenTelemetry Collector pipeline + (traces, metrics, or logs). It embeds a lightweight implementation of the Isolation Forest algorithm that automatically + learns normal behaviour from recent telemetry and tags, scores, or optionally drops anomalies *in‑flight* – no + external ML service required. + +status: + class: processor + stability: + alpha: [traces, metrics, logs] + distributions: [contrib] + codeowners: + active: [atoulme] diff --git a/metric-metadata/jaegerencodingextension.yaml b/metric-metadata/jaegerencodingextension.yaml index 040fe8e..b8bf12f 100644 --- a/metric-metadata/jaegerencodingextension.yaml +++ b/metric-metadata/jaegerencodingextension.yaml @@ -1,3 +1,4 @@ +display_name: Jaeger Encoding Extension type: jaeger_encoding status: @@ -5,7 +6,7 @@ status: class: extension stability: alpha: [extension] - distributions: [] + distributions: [contrib] codeowners: active: [MovieStoreGuy, atoulme] diff --git a/metric-metadata/jaegerremotesampling.yaml b/metric-metadata/jaegerremotesampling.yaml index b9e859c..6bb7581 100644 --- a/metric-metadata/jaegerremotesampling.yaml +++ b/metric-metadata/jaegerremotesampling.yaml @@ -1,3 +1,4 @@ +display_name: Jaeger Remote Sampling Extension type: jaegerremotesampling status: diff --git a/metric-metadata/jmxreceiver.yaml b/metric-metadata/jmxreceiver.yaml index 23edbcd..d078245 100644 --- a/metric-metadata/jmxreceiver.yaml +++ b/metric-metadata/jmxreceiver.yaml @@ -3,7 +3,11 @@ type: jmx status: class: receiver stability: - beta: [metrics] + deprecated: [metrics] + deprecation: + metrics: + migration: "use JMX Gatherer Java program" + date: "2026-01-30" distributions: [contrib] codeowners: active: [atoulme, rogercoll] diff --git a/metric-metadata/journald.yaml b/metric-metadata/journald.yaml new file mode 100644 index 0000000..ab7df4e --- /dev/null +++ b/metric-metadata/journald.yaml @@ -0,0 +1,11 @@ +type: journald + +status: + disable_codecov_badge: true + class: pkg/stanza/operator/input + stability: + alpha: [logs] + codeowners: + active: [belimawr, namco1992] + emeritus: [djaglowski, sumo-drosiek] + unsupported_platforms: [darwin, windows] diff --git a/metric-metadata/journaldreceiver.yaml b/metric-metadata/journaldreceiver.yaml index 4ace271..5cd2f69 100644 --- a/metric-metadata/journaldreceiver.yaml +++ b/metric-metadata/journaldreceiver.yaml @@ -6,7 +6,6 @@ status: alpha: [logs] distributions: [contrib, k8s] codeowners: - active: [sumo-drosiek] - emeritus: [djaglowski] + active: [belimawr, namco1992] + emeritus: [djaglowski, sumo-drosiek] unsupported_platforms: [darwin, windows] - diff --git a/metric-metadata/jsonlogencodingextension.yaml b/metric-metadata/jsonlogencodingextension.yaml index 686b8a2..07cd04c 100644 --- a/metric-metadata/jsonlogencodingextension.yaml +++ b/metric-metadata/jsonlogencodingextension.yaml @@ -1,3 +1,4 @@ +display_name: JSON Log Encoding Extension type: json_log_encoding status: @@ -5,7 +6,7 @@ status: class: extension stability: alpha: [extension] - distributions: [] + distributions: [contrib] codeowners: active: [VihasMakwana, atoulme] diff --git a/metric-metadata/k8sattributesprocessor.yaml b/metric-metadata/k8sattributesprocessor.yaml index 01ddd1a..ef648cb 100644 --- a/metric-metadata/k8sattributesprocessor.yaml +++ b/metric-metadata/k8sattributesprocessor.yaml @@ -1,4 +1,8 @@ -type: k8sattributes +display_name: Kubernetes Attributes Processor +type: k8s_attributes + +description: | + The Kubernetes Attributes Processor allows adding k8s metadata to resource attributes for spans, metrics and logs. status: class: processor @@ -6,53 +10,46 @@ status: beta: [logs, metrics, traces] development: [profiles] distributions: [contrib, k8s] + warnings: [Memory consumption, Other] codeowners: - active: [dmitryax, fatsheep9146, TylerHelmuth, ChrsMark] + active: [dmitryax, fatsheep9146, TylerHelmuth, ChrsMark, odubajDT] emeritus: [rmfitzpatrick] # resource attributes are exposed through a different configuration interface (extract::metadata). resource_attributes: - k8s.cluster.uid: - description: Gives cluster uid identified with kube-system namespace + container.id: + description: Container ID. Usually a UUID, as for example used to identify Docker containers. The UUID might be abbreviated. Requires k8s.container.restart_count. type: string enabled: false - k8s.namespace.name: - description: The name of the namespace that the pod is running in. - type: string - enabled: true - k8s.pod.name: - description: The name of the Pod. - type: string - enabled: true - k8s.pod.uid: - description: The UID of the Pod. + container.image.name: + description: Name of the image the container was built on. Requires container.id or k8s.container.name. type: string enabled: true - k8s.pod.hostname: - description: The hostname of the Pod. - type: string + container.image.repo_digests: + description: Repo digests of the container image as provided by the container runtime. + type: slice enabled: false - k8s.pod.start_time: - description: The start time of the Pod. + container.image.tag: + description: Container image tag. Defaults to "latest" if not provided (unless digest also in image path) Requires container.id or k8s.container.name. Deprecated, use container.image.tags instead. type: string enabled: true - k8s.pod.ip: - description: The IP address of the Pod. + container.image.tags: + description: Container image tags. Requires container.id or k8s.container.name. + type: slice + enabled: true + k8s.cluster.uid: + description: Gives cluster uid identified with kube-system namespace type: string enabled: false - k8s.deployment.name: - description: The name of the Deployment. - type: string - enabled: true - k8s.deployment.uid: - description: The UID of the Deployment. + k8s.container.name: + description: The name of the Container in a Pod template. Requires container.id. type: string enabled: false - k8s.replicaset.name: - description: The name of the ReplicaSet. + k8s.cronjob.name: + description: The name of the CronJob. type: string enabled: false - k8s.replicaset.uid: - description: The UID of the ReplicaSet. + k8s.cronjob.uid: + description: The uid of the CronJob. type: string enabled: false k8s.daemonset.name: @@ -63,16 +60,12 @@ resource_attributes: description: The UID of the DaemonSet. type: string enabled: false - k8s.statefulset.name: - description: The name of the StatefulSet. - type: string - enabled: false - k8s.statefulset.uid: - description: The UID of the StatefulSet. + k8s.deployment.name: + description: The name of the Deployment. type: string - enabled: false - k8s.container.name: - description: The name of the Container in a Pod template. Requires container.id. + enabled: true + k8s.deployment.uid: + description: The UID of the Deployment. type: string enabled: false k8s.job.name: @@ -83,10 +76,10 @@ resource_attributes: description: The UID of the Job. type: string enabled: false - k8s.cronjob.name: - description: The name of the CronJob. + k8s.namespace.name: + description: The name of the namespace that the pod is running in. type: string - enabled: false + enabled: true k8s.node.name: description: The name of the Node. type: string @@ -95,32 +88,40 @@ resource_attributes: description: The UID of the Node. type: string enabled: false - container.id: - description: Container ID. Usually a UUID, as for example used to identify Docker containers. The UUID might be abbreviated. Requires k8s.container.restart_count. + k8s.pod.hostname: + description: The hostname of the Pod. type: string enabled: false - container.image.name: - description: Name of the image the container was built on. Requires container.id or k8s.container.name. + k8s.pod.ip: + description: The IP address of the Pod. type: string - enabled: true - container.image.repo_digests: - description: Repo digests of the container image as provided by the container runtime. - type: slice enabled: false - container.image.tag: - description: Container image tag. Defaults to "latest" if not provided (unless digest also in image path) Requires container.id or k8s.container.name. + k8s.pod.name: + description: The name of the Pod. type: string enabled: true - service.namespace: - description: The namespace of the service. + k8s.pod.start_time: + description: The start time of the Pod. + type: string + enabled: true + k8s.pod.uid: + description: The UID of the Pod. + type: string + enabled: true + k8s.replicaset.name: + description: The name of the ReplicaSet. type: string enabled: false - service.name: - description: The name of the service. + k8s.replicaset.uid: + description: The UID of the ReplicaSet. type: string enabled: false - service.version: - description: The version of the service. + k8s.statefulset.name: + description: The name of the StatefulSet. + type: string + enabled: false + k8s.statefulset.uid: + description: The UID of the StatefulSet. type: string enabled: false service.instance.id: @@ -128,51 +129,152 @@ resource_attributes: type: string enabled: false + service.name: + description: The name of the service. + type: string + enabled: false + service.namespace: + description: The namespace of the service. + type: string + enabled: false + service.version: + description: The version of the service. + type: string + enabled: false + +feature_gates: + - id: k8sattr.labelsAnnotationsSingular.allow + stage: deprecated + description: >- + When enabled, default k8s label and annotation resource attribute keys will be singular, instead of plural + from_version: v0.125.0 + to_version: v0.145.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/39774 + - id: processor.k8sattributes.DontEmitV0K8sConventions + stage: alpha + description: >- + When enabled, semconv legacy attributes are disabled. + from_version: v0.145.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/44589 + - id: processor.k8sattributes.EmitV1K8sConventions + stage: alpha + description: >- + When enabled, semconv stable attributes are enabled. + from_version: v0.145.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/44589 + tests: config: skip_lifecycle: true goleak: skip: true +attributes: + otelcol.signal: + description: The signal type the telemetry metric is associated with + type: string + enum: + - metrics + - traces + - logs + - profiles + pod_identifier: + description: The pod identifier value(s) used for the association attempt + type: string + status: + description: The status of the pod association operation + type: string + enum: + - success + - error + telemetry: metrics: - otelsvc_k8s_pod_updated: - enabled: true - description: Number of pod update events received + otelcol.k8s.pod.association: + enabled: false + description: Number of pod associations' evaluations + stability: development + unit: "{resources}" + attributes: [status, pod_identifier, otelcol.signal] + sum: + value_type: int + monotonic: true + otelsvc_k8s_daemonset_added: + enabled: false + description: Number of daemonset add events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_pod_added: - enabled: true - description: Number of pod add events received + otelsvc_k8s_daemonset_deleted: + enabled: false + description: Number of daemonset delete events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_pod_deleted: - enabled: true - description: Number of pod delete events received + otelsvc_k8s_daemonset_updated: + enabled: false + description: Number of daemonset update events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_pod_table_size: - enabled: true - description: Size of table containing pod info + otelsvc_k8s_deployment_added: + enabled: false + description: Number of deployment add events received + stability: development unit: "1" - gauge: + sum: value_type: int + monotonic: true + otelsvc_k8s_deployment_deleted: + enabled: false + description: Number of deployment delete events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_deployment_updated: + enabled: false + description: Number of deployment update events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true otelsvc_k8s_ip_lookup_miss: enabled: true description: Number of times pod by IP lookup failed. + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_namespace_updated: - enabled: true - description: Number of namespace update events received + otelsvc_k8s_job_added: + enabled: false + description: Number of job add events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_job_deleted: + enabled: false + description: Number of job delete events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_job_updated: + enabled: false + description: Number of job update events received + stability: development unit: "1" sum: value_type: int @@ -180,6 +282,7 @@ telemetry: otelsvc_k8s_namespace_added: enabled: true description: Number of namespace add events received + stability: development unit: "1" sum: value_type: int @@ -187,13 +290,15 @@ telemetry: otelsvc_k8s_namespace_deleted: enabled: true description: Number of namespace delete events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_node_updated: + otelsvc_k8s_namespace_updated: enabled: true - description: Number of node update events received + description: Number of namespace update events received + stability: development unit: "1" sum: value_type: int @@ -201,6 +306,7 @@ telemetry: otelsvc_k8s_node_added: enabled: true description: Number of node add events received + stability: development unit: "1" sum: value_type: int @@ -208,34 +314,46 @@ telemetry: otelsvc_k8s_node_deleted: enabled: true description: Number of node delete events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_deployment_updated: - enabled: false - description: Number of deployment update events received + otelsvc_k8s_node_updated: + enabled: true + description: Number of node update events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_deployment_added: - enabled: false - description: Number of deployment add events received + otelsvc_k8s_pod_added: + enabled: true + description: Number of pod add events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_deployment_deleted: - enabled: false - description: Number of deployment delete events received + otelsvc_k8s_pod_deleted: + enabled: true + description: Number of pod delete events received + stability: development unit: "1" sum: value_type: int monotonic: true - otelsvc_k8s_replicaset_updated: + otelsvc_k8s_pod_table_size: enabled: true - description: Number of ReplicaSet update events received + description: Size of table containing pod info + stability: development + unit: "1" + gauge: + value_type: int + otelsvc_k8s_pod_updated: + enabled: true + description: Number of pod update events received + stability: development unit: "1" sum: value_type: int @@ -243,6 +361,7 @@ telemetry: otelsvc_k8s_replicaset_added: enabled: true description: Number of ReplicaSet add events received + stability: development unit: "1" sum: value_type: int @@ -250,6 +369,39 @@ telemetry: otelsvc_k8s_replicaset_deleted: enabled: true description: Number of ReplicaSet delete events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_replicaset_updated: + enabled: true + description: Number of ReplicaSet update events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_statefulset_added: + enabled: false + description: Number of statefulset add events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_statefulset_deleted: + enabled: false + description: Number of statefulset delete events received + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + otelsvc_k8s_statefulset_updated: + enabled: false + description: Number of statefulset update events received + stability: development unit: "1" sum: value_type: int diff --git a/metric-metadata/k8sclusterreceiver.yaml b/metric-metadata/k8sclusterreceiver.yaml index 2fada36..696520c 100644 --- a/metric-metadata/k8sclusterreceiver.yaml +++ b/metric-metadata/k8sclusterreceiver.yaml @@ -12,180 +12,220 @@ status: sem_conv_version: 1.18.0 resource_attributes: - k8s.namespace.uid: - description: The k8s namespace uid. + container.id: + description: The container id. type: string enabled: true - k8s.namespace.name: - description: The k8s namespace name. + container.image.name: + description: The container image name type: string enabled: true - k8s.node.uid: - description: The k8s node uid. + container.image.tag: + description: The container image tag type: string enabled: true - k8s.node.name: - description: The k8s node name. + container.runtime: + description: The container runtime used by Kubernetes Node. + type: string + enabled: false + + container.runtime.version: + description: The version of container runtime used by Kubernetes Node. + type: string + enabled: false + + k8s.container.name: + description: The k8s container name type: string enabled: true - container.id: - description: The container id. + k8s.container.status.last_terminated_reason: + description: Last terminated reason of a container. + type: string + enabled: false + + k8s.cronjob.name: + description: The k8s CronJob name type: string enabled: true - container.image.name: - description: The container image name + k8s.cronjob.uid: + description: The k8s CronJob uid. type: string enabled: true - container.image.tag: - description: The container image tag + k8s.daemonset.name: + description: The k8s daemonset name. type: string enabled: true - k8s.container.name: - description: The k8s container name + k8s.daemonset.uid: + description: The k8s daemonset uid. type: string enabled: true - k8s.pod.name: - description: The k8s pod name. + k8s.deployment.name: + description: The name of the Deployment. type: string enabled: true - k8s.pod.uid: - description: The k8s pod uid. + k8s.deployment.uid: + description: The UID of the Deployment. type: string enabled: true - k8s.pod.qos_class: - description: "The k8s pod qos class name. One of Guaranteed, Burstable, BestEffort." + k8s.hpa.name: + description: The k8s hpa name. + type: string + enabled: true + + k8s.hpa.scaletargetref.apiversion: + description: The API version of the target resource to scale for the HorizontalPodAutoscaler. type: string enabled: false - k8s.replicaset.name: - description: The k8s replicaset name + k8s.hpa.scaletargetref.kind: + description: The kind of the target resource to scale for the HorizontalPodAutoscaler. type: string - enabled: true + enabled: false - k8s.replicaset.uid: - description: The k8s replicaset uid + k8s.hpa.scaletargetref.name: + description: The name of the target resource to scale for the HorizontalPodAutoscaler. + type: string + enabled: false + + k8s.hpa.uid: + description: The k8s hpa uid. type: string enabled: true - k8s.replicationcontroller.name: - description: The k8s replicationcontroller name. + k8s.job.name: + description: The k8s pod name. type: string enabled: true - k8s.replicationcontroller.uid: - description: The k8s replicationcontroller uid. + k8s.job.uid: + description: The k8s job uid. type: string enabled: true - k8s.resourcequota.uid: - description: The k8s resourcequota uid. + k8s.kubelet.version: + description: The version of Kubelet running on the node. + type: string + enabled: false + + k8s.namespace.name: + description: The k8s namespace name. type: string enabled: true - k8s.resourcequota.name: - description: The k8s resourcequota name. + k8s.namespace.uid: + description: The k8s namespace uid. type: string enabled: true - k8s.statefulset.uid: - description: The k8s statefulset uid. + k8s.node.name: + description: The k8s node name. type: string enabled: true - k8s.statefulset.name: - description: The k8s statefulset name. + k8s.node.uid: + description: The k8s node uid. type: string enabled: true - k8s.deployment.uid: - description: The UID of the Deployment. + k8s.pod.name: + description: The k8s pod name. type: string enabled: true - k8s.deployment.name: - description: The name of the Deployment. + k8s.pod.qos_class: + description: "The k8s pod qos class name. One of Guaranteed, Burstable, BestEffort." + type: string + enabled: false + + k8s.pod.uid: + description: The k8s pod uid. type: string enabled: true - k8s.cronjob.uid: - description: The k8s CronJob uid. + k8s.replicaset.name: + description: The k8s replicaset name type: string enabled: true - k8s.cronjob.name: - description: The k8s CronJob name + k8s.replicaset.uid: + description: The k8s replicaset uid type: string enabled: true - k8s.daemonset.name: - description: The k8s daemonset name. + k8s.replicationcontroller.name: + description: The k8s replicationcontroller name. type: string enabled: true - k8s.daemonset.uid: - description: The k8s daemonset uid. + k8s.replicationcontroller.uid: + description: The k8s replicationcontroller uid. type: string enabled: true - k8s.hpa.uid: - description: The k8s hpa uid. + k8s.resourcequota.name: + description: The k8s resourcequota name. type: string enabled: true - k8s.hpa.name: - description: The k8s hpa name. + k8s.resourcequota.uid: + description: The k8s resourcequota uid. type: string enabled: true - k8s.hpa.scaletargetref.kind: - description: The kind of the target resource to scale for the HorizontalPodAutoscaler. + k8s.service.name: + description: The k8s service name. type: string + enabled: true + + k8s.service.publish_not_ready_addresses: + description: Whether the Service publishes not-ready endpoints. + type: bool enabled: false - k8s.hpa.scaletargetref.name: - description: The name of the target resource to scale for the HorizontalPodAutoscaler. + k8s.service.traffic_distribution: + description: The traffic distribution policy for the Service (e.g., PreferClose). type: string enabled: false - k8s.hpa.scaletargetref.apiversion: - description: The API version of the target resource to scale for the HorizontalPodAutoscaler. + k8s.service.type: + description: The k8s service type. type: string - enabled: false + enabled: true - k8s.job.name: - description: The k8s pod name. + k8s.service.uid: + description: The k8s service uid. type: string enabled: true - k8s.job.uid: - description: The k8s job uid. + k8s.statefulset.name: + description: The k8s statefulset name. type: string enabled: true - k8s.kubelet.version: - description: The version of Kubelet running on the node. + k8s.statefulset.uid: + description: The k8s statefulset uid. type: string - enabled: false + enabled: true - container.runtime: - description: The container runtime used by Kubernetes Node. + openshift.clusterquota.name: + description: The k8s ClusterResourceQuota name. type: string - enabled: false + enabled: true - container.runtime.version: - description: The version of container runtime used by Kubernetes Node. + openshift.clusterquota.uid: + description: The k8s ClusterResourceQuota uid. type: string - enabled: false + enabled: true os.description: description: The os description used by Kubernetes Node. @@ -197,124 +237,152 @@ resource_attributes: type: string enabled: false - openshift.clusterquota.uid: - description: The k8s ClusterResourceQuota uid. - type: string - enabled: true - - openshift.clusterquota.name: - description: The k8s ClusterResourceQuota name. - type: string - enabled: true - - k8s.container.status.last_terminated_reason: - description: Last terminated reason of a container. - type: string - enabled: false - attributes: + condition: + description: "the name of Kubernetes Node condition. Example: Ready, Memory, PID, DiskPressure" + type: string + k8s.container.status.reason: + description: The reason of the current container status. + type: string + enum: + - ContainerCreating + - CrashLoopBackOff + - CreateContainerConfigError + - ErrImagePull + - ImagePullBackOff + - OOMKilled + - Completed + - Error + - ContainerCannotRun + k8s.container.status.state: + description: The state of the container (terminated, running, waiting). See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstate-v1-core for details. + type: string + enum: + - terminated + - running + - waiting k8s.namespace.name: description: The k8s namespace name. type: string + k8s.service.endpoint.address_type: + description: The address type of the endpoint. + type: string + enum: + - IPv4 + - IPv6 + - FQDN + k8s.service.endpoint.condition: + description: The condition of the service endpoint. + type: string + enum: + - ready + - serving + - terminating + k8s.service.endpoint.zone: + description: The zone of the service endpoint, typically corresponding to a failure domain. + type: string resource: description: the name of the resource on which the quota is applied type: string - condition: - description: "the name of Kubernetes Node condition. Example: Ready, Memory, PID, DiskPressure" - type: string metrics: - k8s.container.cpu_request: - enabled: true - description: Resource requested for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details - unit: "{cpu}" - gauge: - value_type: double k8s.container.cpu_limit: enabled: true description: Maximum resource limit set for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details unit: "{cpu}" + stability: development gauge: value_type: double - k8s.container.memory_request: + k8s.container.cpu_request: enabled: true description: Resource requested for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details - unit: "By" + unit: "{cpu}" + stability: development gauge: - value_type: int - k8s.container.memory_limit: + value_type: double + k8s.container.ephemeralstorage_limit: enabled: true description: Maximum resource limit set for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details unit: "By" + stability: development gauge: value_type: int - k8s.container.storage_request: + k8s.container.ephemeralstorage_request: enabled: true description: Resource requested for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details unit: "By" + stability: development gauge: value_type: int - k8s.container.storage_limit: + k8s.container.memory_limit: enabled: true description: Maximum resource limit set for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details unit: "By" + stability: development gauge: value_type: int - k8s.container.ephemeralstorage_request: + k8s.container.memory_request: enabled: true description: Resource requested for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details unit: "By" + stability: development gauge: value_type: int - k8s.container.ephemeralstorage_limit: + k8s.container.ready: enabled: true - description: Maximum resource limit set for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details - unit: "By" + description: Whether a container has passed its readiness probe (0 for no, 1 for yes) + unit: "" + stability: development gauge: value_type: int k8s.container.restarts: enabled: true description: How many times the container has restarted in the recent past. This value is pulled directly from the K8s API and the value can go indefinitely high and be reset to 0 at any time depending on how your kubelet is configured to prune dead containers. It is best to not depend too much on the exact value but rather look at it as either == 0, in which case you can conclude there were no restarts in the recent past, or > 0, in which case you can conclude there were restarts in the recent past, and not try and analyze the value beyond that. unit: "{restart}" + stability: development gauge: value_type: int - k8s.container.ready: - enabled: true - description: Whether a container has passed its readiness probe (0 for no, 1 for yes) - unit: "" - gauge: - value_type: int - - k8s.pod.phase: - enabled: true - description: Current phase of the pod (1 - Pending, 2 - Running, 3 - Succeeded, 4 - Failed, 5 - Unknown) - unit: "" - gauge: + k8s.container.status.reason: + enabled: false + description: Experimental metric, may experience breaking changes. Describes the number of K8s containers that are currently in a state for a given reason. All possible container state reasons will be reported at each time interval to avoid missing metrics. Only the value corresponding to the current state reason will be non-zero. + unit: "{container}" + stability: development + sum: + aggregation_temporality: cumulative + monotonic: false value_type: int - k8s.pod.status_reason: + attributes: + - k8s.container.status.reason + k8s.container.status.state: enabled: false - description: Current status reason of the pod (1 - Evicted, 2 - NodeAffinity, 3 - NodeLost, 4 - Shutdown, 5 - UnexpectedAdmissionError, 6 - Unknown) - unit: "" - gauge: + description: Experimental metric, may experience breaking changes. Describes the number of K8s containers that are currently in a given state. All possible container states will be reported at each time interval to avoid missing metrics. Only the value corresponding to the current state will be non-zero. + unit: "{container}" + stability: development + sum: + aggregation_temporality: cumulative + monotonic: false value_type: int - - k8s.deployment.desired: + attributes: + - k8s.container.status.state + k8s.container.storage_limit: enabled: true - description: Number of desired pods in this deployment - unit: "{pod}" + description: Maximum resource limit set for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details + unit: "By" + stability: development gauge: value_type: int - k8s.deployment.available: + k8s.container.storage_request: enabled: true - description: Total number of available pods (ready for at least minReadySeconds) targeted by this deployment - unit: "{pod}" + description: Resource requested for the container. See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core for details + unit: "By" + stability: development gauge: - value_type: int - + value_type: int k8s.cronjob.active_jobs: enabled: true description: The number of actively running jobs for a cronjob unit: "{job}" + stability: development gauge: value_type: int @@ -322,45 +390,51 @@ metrics: enabled: true description: Number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod unit: "{node}" + stability: development gauge: value_type: int k8s.daemonset.desired_scheduled_nodes: enabled: true description: Number of nodes that should be running the daemon pod (including nodes currently running the daemon pod) unit: "{node}" + stability: development gauge: value_type: int k8s.daemonset.misscheduled_nodes: enabled: true description: Number of nodes that are running the daemon pod, but are not supposed to run the daemon pod unit: "{node}" + stability: development gauge: value_type: int k8s.daemonset.ready_nodes: enabled: true description: Number of nodes that should be running the daemon pod and have one or more of the daemon pod running and ready unit: "{node}" + stability: development gauge: value_type: int - k8s.hpa.max_replicas: + k8s.deployment.available: enabled: true - description: Maximum number of replicas to which the autoscaler can scale up. + description: Total number of available pods (ready for at least minReadySeconds) targeted by this deployment unit: "{pod}" + stability: development gauge: value_type: int - k8s.hpa.min_replicas: + k8s.deployment.desired: enabled: true - description: Minimum number of replicas to which the autoscaler can scale up. + description: Number of desired pods in this deployment unit: "{pod}" + stability: development gauge: value_type: int - k8s.hpa.current_replicas: enabled: true description: Current number of pod replicas managed by this autoscaler. unit: "{pod}" + stability: development gauge: value_type: int @@ -368,6 +442,23 @@ metrics: enabled: true description: Desired number of pod replicas managed by this autoscaler. unit: "{pod}" + stability: development + gauge: + value_type: int + + k8s.hpa.max_replicas: + enabled: true + description: Maximum number of replicas to which the autoscaler can scale up. + unit: "{pod}" + stability: development + gauge: + value_type: int + + k8s.hpa.min_replicas: + enabled: true + description: Minimum number of replicas to which the autoscaler can scale up. + unit: "{pod}" + stability: development gauge: value_type: int @@ -375,30 +466,35 @@ metrics: enabled: true description: The number of actively running pods for a job unit: "{pod}" + stability: development gauge: value_type: int k8s.job.desired_successful_pods: enabled: true description: The desired number of successfully finished pods the job should be run with unit: "{pod}" + stability: development gauge: value_type: int k8s.job.failed_pods: enabled: true description: The number of pods which reached phase Failed for a job unit: "{pod}" + stability: development gauge: value_type: int k8s.job.max_parallel_pods: enabled: true description: The max desired number of pods the job should run at any given time unit: "{pod}" + stability: development gauge: value_type: int k8s.job.successful_pods: enabled: true description: The number of pods which reached phase Succeeded for a job unit: "{pod}" + stability: development gauge: value_type: int @@ -406,32 +502,68 @@ metrics: enabled: true description: The current phase of namespaces (1 for active and 0 for terminating) unit: "" + stability: development gauge: value_type: int - k8s.replicaset.desired: + k8s.node.condition: + enabled: false + description: The condition of a particular Node. + unit: "{condition}" + stability: development + gauge: + value_type: int + attributes: + - condition + # k8s.node.condition_* metrics (k8s.node.condition_ready, k8s.node.condition_memory_pressure, etc) are controlled + # by node_conditions_to_report config option. By default, only k8s.node.condition_ready is enabled. + + # k8s.node.allocatable_* metrics (k8s.node.allocatable_cpu, k8s.node.allocatable_memory, etc) are controlled + # by allocatable_types_to_report config option. By default, none of them are reported. + + k8s.pod.phase: enabled: true - description: Number of desired pods in this replicaset - unit: "{pod}" + description: Current phase of the pod (1 - Pending, 2 - Running, 3 - Succeeded, 4 - Failed, 5 - Unknown) + unit: "" + stability: development gauge: value_type: int + k8s.pod.status_reason: + enabled: false + description: Current status reason of the pod (1 - Evicted, 2 - NodeAffinity, 3 - NodeLost, 4 - Shutdown, 5 - UnexpectedAdmissionError, 6 - Unknown) + unit: "" + stability: development + gauge: + value_type: int + k8s.replicaset.available: enabled: true description: Total number of available pods (ready for at least minReadySeconds) targeted by this replicaset unit: "{pod}" + stability: development gauge: value_type: int - k8s.replication_controller.desired: + k8s.replicaset.desired: enabled: true - description: Number of desired pods in this replication_controller + description: Number of desired pods in this replicaset unit: "{pod}" + stability: development gauge: value_type: int k8s.replication_controller.available: enabled: true description: Total number of available pods (ready for at least minReadySeconds) targeted by this replication_controller unit: "{pod}" + stability: development + gauge: + value_type: int + + k8s.replication_controller.desired: + enabled: true + description: Number of desired pods in this replication_controller + unit: "{pod}" + stability: development gauge: value_type: int @@ -439,6 +571,7 @@ metrics: enabled: true description: The upper limit for a particular resource in a specific namespace. Will only be sent if a quota is specified. CPU requests/limits will be sent as millicores unit: "{resource}" + stability: development gauge: value_type: int attributes: @@ -447,29 +580,53 @@ metrics: enabled: true description: The usage for a particular resource in a specific namespace. Will only be sent if a quota is specified. CPU requests/limits will be sent as millicores unit: "{resource}" + stability: development gauge: value_type: int attributes: - resource - k8s.statefulset.desired_pods: + k8s.service.endpoint.count: + enabled: false + description: The number of endpoints for a service, broken down by condition, address type, and zone. + unit: "{endpoint}" + stability: development + gauge: + value_type: int + attributes: + - k8s.service.endpoint.address_type + - k8s.service.endpoint.condition + - k8s.service.endpoint.zone + + k8s.service.load_balancer.ingress.count: + enabled: false + description: The number of load balancer ingress points (external IPs/hostnames) assigned to the service. + unit: "{ingress}" + stability: development + gauge: + value_type: int + + k8s.statefulset.current_pods: enabled: true - description: Number of desired pods in the stateful set (the `spec.replicas` field) + description: The number of pods created by the StatefulSet controller from the StatefulSet version unit: "{pod}" + stability: development gauge: value_type: int - k8s.statefulset.ready_pods: + k8s.statefulset.desired_pods: enabled: true - description: Number of pods created by the stateful set that have the `Ready` condition + description: Number of desired pods in the stateful set (the `spec.replicas` field) unit: "{pod}" + stability: development gauge: value_type: int - k8s.statefulset.current_pods: + k8s.statefulset.ready_pods: enabled: true - description: The number of pods created by the StatefulSet controller from the StatefulSet version + description: Number of pods created by the stateful set that have the `Ready` condition unit: "{pod}" + stability: development gauge: value_type: int @@ -477,60 +634,51 @@ metrics: enabled: true description: Number of pods created by the StatefulSet controller from the StatefulSet version unit: "{pod}" + stability: development gauge: value_type: int - openshift.clusterquota.limit: + openshift.appliedclusterquota.limit: enabled: true - description: The configured upper limit for a particular resource. + description: The upper limit for a particular resource in a specific namespace. unit: "{resource}" + stability: development gauge: value_type: int attributes: + - k8s.namespace.name - resource - openshift.clusterquota.used: + openshift.appliedclusterquota.used: enabled: true - description: The usage for a particular resource with a configured limit. + description: The usage for a particular resource in a specific namespace. unit: "{resource}" + stability: development gauge: value_type: int attributes: + - k8s.namespace.name - resource - openshift.appliedclusterquota.limit: + openshift.clusterquota.limit: enabled: true - description: The upper limit for a particular resource in a specific namespace. + description: The configured upper limit for a particular resource. unit: "{resource}" + stability: development gauge: value_type: int attributes: - - k8s.namespace.name - resource - openshift.appliedclusterquota.used: + openshift.clusterquota.used: enabled: true - description: The usage for a particular resource in a specific namespace. + description: The usage for a particular resource with a configured limit. unit: "{resource}" + stability: development gauge: value_type: int attributes: - - k8s.namespace.name - resource - k8s.node.condition: - enabled: false - description: The condition of a particular Node. - unit: "{condition}" - gauge: - value_type: int - attributes: - - condition - # k8s.node.condition_* metrics (k8s.node.condition_ready, k8s.node.condition_memory_pressure, etc) are controlled - # by node_conditions_to_report config option. By default, only k8s.node.condition_ready is enabled. - - # k8s.node.allocatable_* metrics (k8s.node.allocatable_cpu, k8s.node.allocatable_memory, etc) are controlled - # by allocatable_types_to_report config option. By default, none of them are reported. tests: config: skip_lifecycle: true goleak: skip: true - diff --git a/metric-metadata/k8sinventory.yaml b/metric-metadata/k8sinventory.yaml new file mode 100644 index 0000000..ba9440c --- /dev/null +++ b/metric-metadata/k8sinventory.yaml @@ -0,0 +1,3 @@ +status: + codeowners: + active: [dmitryax, hvaghani221, TylerHelmuth, ChrsMark, krisztianfekete] diff --git a/metric-metadata/k8sleaderelector.yaml b/metric-metadata/k8sleaderelector.yaml index ac52dd5..88afaa6 100644 --- a/metric-metadata/k8sleaderelector.yaml +++ b/metric-metadata/k8sleaderelector.yaml @@ -1,10 +1,15 @@ +display_name: Kubernetes Leader Elector Extension type: k8s_leader_elector +description: | + This extension enables OpenTelemetry components to run in HA mode across a Kubernetes cluster. The component that owns + the lease becomes the leader and becomes the active instance. + status: class: extension stability: alpha: [extension] - distributions: [] + distributions: [contrib, k8s] codeowners: active: [dmitryax, rakesh-garimella] diff --git a/metric-metadata/k8sleaderelectortest.yaml b/metric-metadata/k8sleaderelectortest.yaml new file mode 100644 index 0000000..67439e7 --- /dev/null +++ b/metric-metadata/k8sleaderelectortest.yaml @@ -0,0 +1,3 @@ +status: + codeowners: + active: [ dmitryax, rakesh-garimella ] \ No newline at end of file diff --git a/metric-metadata/k8slogreceiver.yaml b/metric-metadata/k8slogreceiver.yaml index 3230d06..3bb1110 100644 --- a/metric-metadata/k8slogreceiver.yaml +++ b/metric-metadata/k8slogreceiver.yaml @@ -3,6 +3,7 @@ type: k8slog status: class: receiver stability: - development: [logs] + unmaintained: [logs] codeowners: - active: [h0cheung, TylerHelmuth] + emeritus: [h0cheung, TylerHelmuth] + seeking_new: true diff --git a/metric-metadata/k8snode.yaml b/metric-metadata/k8snode.yaml index 3aac54b..70091b7 100644 --- a/metric-metadata/k8snode.yaml +++ b/metric-metadata/k8snode.yaml @@ -3,11 +3,11 @@ type: resourcedetectionprocessor/k8snode parent: resourcedetection resource_attributes: - k8s.node.uid: - description: The Kubernetes node UID - type: string - enabled: true k8s.node.name: description: The Kubernetes node name type: string enabled: true + k8s.node.uid: + description: The Kubernetes node UID + type: string + enabled: true diff --git a/metric-metadata/k8sobjectsreceiver.yaml b/metric-metadata/k8sobjectsreceiver.yaml index 96dca80..9950b30 100644 --- a/metric-metadata/k8sobjectsreceiver.yaml +++ b/metric-metadata/k8sobjectsreceiver.yaml @@ -6,10 +6,10 @@ status: beta: [logs] distributions: [contrib, k8s] codeowners: - active: [dmitryax, hvaghani221, TylerHelmuth, ChrsMark] + active: [dmitryax, hvaghani221, TylerHelmuth, ChrsMark, krisztianfekete] tests: config: skip_lifecycle: true goleak: - skip: true \ No newline at end of file + skip: true diff --git a/metric-metadata/k8sobserver.yaml b/metric-metadata/k8sobserver.yaml index b503277..d0e7d27 100644 --- a/metric-metadata/k8sobserver.yaml +++ b/metric-metadata/k8sobserver.yaml @@ -1,3 +1,4 @@ +display_name: Kubernetes Observer Extension type: k8s_observer status: diff --git a/metric-metadata/kafka.yaml b/metric-metadata/kafka.yaml index 3b82324..39394ba 100644 --- a/metric-metadata/kafka.yaml +++ b/metric-metadata/kafka.yaml @@ -1,4 +1,10 @@ status: disable_codecov_badge: true codeowners: - active: [pavolloffay, MovieStoreGuy, axw] + active: [pavolloffay, MovieStoreGuy, axw, paulojmdias] + +tests: + goleak: + ignore: + top: + - github.com/twmb/franz-go/pkg/kfake.(*group).manage diff --git a/metric-metadata/kafkaexporter.yaml b/metric-metadata/kafkaexporter.yaml index 6e54dfc..6a5b965 100644 --- a/metric-metadata/kafkaexporter.yaml +++ b/metric-metadata/kafkaexporter.yaml @@ -1,12 +1,14 @@ type: kafka +display_name: Kafka Exporter status: class: exporter stability: beta: [traces, metrics, logs] + development: [profiles] distributions: [core, contrib] codeowners: - active: [pavolloffay, MovieStoreGuy, axw] + active: [pavolloffay, MovieStoreGuy, axw, paulojmdias] tests: config: @@ -15,6 +17,130 @@ tests: ignore: top: - github.com/twmb/franz-go/pkg/kfake.(*group).manage - # Only happens when the benchmarks are run with Sarama. Will eventually - # remove once Franz-go is the main client. - - github.com/rcrowley/go-metrics.(*meterArbiter).tick + +attributes: + node_id: + description: The Kafka node ID. + type: int + outcome: + description: The operation outcome. + type: string + enum: [success, failure] + partition: + description: The Kafka topic partition. + type: int + server.address: + description: The Kafka node address. + type: string + topic: + description: The Kafka topic. + type: string + +telemetry: + metrics: + kafka_broker_closed: + enabled: true + stability: development + description: The total number of connections closed. + extended_documentation: Only produced when franz-go is enabled. + optional: true + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address] + kafka_broker_connects: + enabled: true + stability: development + description: The total number of connections opened. + extended_documentation: Only produced when franz-go is enabled. + optional: true + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address, outcome] + kafka_broker_throttling_duration: + enabled: true + stability: deprecated + description: The throttling duration in ms imposed by the broker when exporting messages. + extended_documentation: Only produced when franz-go is enabled. Deprecated in favor of kafka_broker_throttling_latency. + optional: true + unit: ms + histogram: + value_type: int + attributes: [node_id, server.address] + warnings: + if_enabled: This metric is deprecated in favor of kafka_broker_throttling_latency and will be removed soon. + kafka_broker_throttling_latency: + enabled: true + stability: development + description: The throttling latency in seconds imposed by the broker when exporting records. + extended_documentation: Only produced when franz-go is enabled. + optional: true + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100] + attributes: [node_id, server.address] + kafka_exporter_bytes: + enabled: true + stability: development + description: The size in bytes of exported records seen by the broker. + extended_documentation: Only produced when franz-go is enabled. + optional: true + unit: By + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address, topic, partition, outcome] + kafka_exporter_bytes_uncompressed: + enabled: true + stability: development + description: The uncompressed size in bytes of exported messages seen by the client. + unit: By + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address, topic, partition, outcome] + kafka_exporter_latency: + enabled: true + stability: deprecated + description: The time it took in ms to export a batch of messages. + extended_documentation: Deprecated in favor of kafka_exporter_write_latency. + unit: ms + histogram: + value_type: int + attributes: [node_id, server.address, topic, partition, outcome] + warnings: + if_enabled: This metric is deprecated in favor of kafka_exporter_write_latency and will be removed soon. + kafka_exporter_messages: + enabled: true + stability: deprecated + description: The number of exported messages. + extended_documentation: Deprecated in favor of kafka_exporter_records. + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address, topic, partition, outcome] + warnings: + if_enabled: This metric is deprecated in favor of kafka_exporter_records and will be removed soon. + kafka_exporter_records: + enabled: true + stability: development + description: The number of exported records. + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id, server.address, topic, partition, outcome] + kafka_exporter_write_latency: + enabled: true + stability: development + description: The time it took in seconds to export a batch of records. + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100] + attributes: [node_id, server.address, topic, partition, outcome] diff --git a/metric-metadata/kafkametricsreceiver.yaml b/metric-metadata/kafkametricsreceiver.yaml index 9c86180..e5d037b 100644 --- a/metric-metadata/kafkametricsreceiver.yaml +++ b/metric-metadata/kafkametricsreceiver.yaml @@ -8,6 +8,14 @@ status: codeowners: active: [dmitryax] +feature_gates: + - id: receiver.kafkametricsreceiver.UseFranzGo + stage: beta + description: >- + When enabled, the Kafka Metrics receiver will use the franz-go client to connect to Kafka. + from_version: v0.137.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/41480 + resource_attributes: kafka.cluster.alias: description: The alias name (string) of the cluster @@ -18,74 +26,83 @@ attributes: broker: description: The ID of the kafka broker type: string - topic: - description: The ID (integer) of a topic + group: + description: The ID (string) of a consumer group type: string partition: description: The number (integer) of the partition type: int - group: - description: The ID (string) of a consumer group + topic: + description: The ID (integer) of a topic type: string metrics: # brokers scraper - kafka.brokers: - enabled: true - description: Number of brokers in the cluster. - unit: "{brokers}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative kafka.broker.log_retention_period: enabled: false description: log retention time (s) of a broker. + stability: development unit: "s" gauge: value_type: int attributes: [broker] - # topics scraper - kafka.topic.partitions: + kafka.brokers: enabled: true - description: Number of partitions in topic. - unit: "{partitions}" + description: Number of brokers in the cluster. + stability: development + unit: "{brokers}" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [topic] - kafka.topic.replication_factor: - enabled: false - description: replication factor of a topic. + # consumers scraper + kafka.consumer_group.lag: + enabled: true + description: Current approximate lag of consumer group at partition of topic + stability: development unit: "1" gauge: value_type: int - attributes: [topic] - kafka.topic.log_retention_period: - enabled: false - description: log retention period of a topic (s). - unit: s + attributes: [group, topic, partition] + kafka.consumer_group.lag_sum: + enabled: true + description: Current approximate sum of consumer group lag across all partitions of topic + stability: development + unit: "1" gauge: value_type: int - attributes: [topic] - kafka.topic.log_retention_size: - enabled: false - description: log retention size of a topic in Bytes, The value (-1) indicates infinite size. - unit: By + attributes: [group, topic] + kafka.consumer_group.members: + enabled: true + description: Count of members in the consumer group + stability: development + unit: "{members}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [group] + kafka.consumer_group.offset: + enabled: true + description: Current offset of the consumer group at partition of topic + stability: development + unit: "1" gauge: value_type: int - attributes: [topic] - kafka.topic.min_insync_replicas: - enabled: false - description: minimum in-sync replicas of a topic. - unit: "{replicas}" + attributes: [group, topic, partition] + kafka.consumer_group.offset_sum: + enabled: true + description: Sum of consumer group offset across partitions of topic + stability: development + unit: "1" gauge: value_type: int - attributes: [topic] + attributes: [group, topic] + # topics scraper kafka.partition.current_offset: enabled: true description: Current offset of partition of topic. + stability: development unit: "1" gauge: value_type: int @@ -93,6 +110,7 @@ metrics: kafka.partition.oldest_offset: enabled: true description: Oldest offset of partition of topic + stability: development unit: "1" gauge: value_type: int @@ -100,6 +118,7 @@ metrics: kafka.partition.replicas: enabled: true description: Number of replicas for partition of topic + stability: development unit: "{replicas}" sum: monotonic: false @@ -109,50 +128,55 @@ metrics: kafka.partition.replicas_in_sync: enabled: true description: Number of synchronized replicas of partition + stability: development unit: "{replicas}" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [topic, partition] - # consumers scraper - kafka.consumer_group.members: - enabled: true - description: Count of members in the consumer group - unit: "{members}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [group] - kafka.consumer_group.offset: - enabled: true - description: Current offset of the consumer group at partition of topic - unit: "1" + kafka.topic.log_retention_period: + enabled: false + description: log retention period of a topic (s). + stability: development + unit: s gauge: value_type: int - attributes: [group, topic, partition] - kafka.consumer_group.offset_sum: - enabled: true - description: Sum of consumer group offset across partitions of topic - unit: "1" + attributes: [topic] + kafka.topic.log_retention_size: + enabled: false + description: log retention size of a topic in Bytes, The value (-1) indicates infinite size. + stability: development + unit: By gauge: value_type: int - attributes: [group, topic] - kafka.consumer_group.lag: - enabled: true - description: Current approximate lag of consumer group at partition of topic - unit: "1" + attributes: [topic] + kafka.topic.min_insync_replicas: + enabled: false + description: minimum in-sync replicas of a topic. + stability: development + unit: "{replicas}" gauge: value_type: int - attributes: [group, topic, partition] - kafka.consumer_group.lag_sum: + attributes: [topic] + kafka.topic.partitions: enabled: true - description: Current approximate sum of consumer group lag across all partitions of topic + description: Number of partitions in topic. + stability: development + unit: "{partitions}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [topic] + kafka.topic.replication_factor: + enabled: false + description: replication factor of a topic. + stability: development unit: "1" gauge: value_type: int - attributes: [group, topic] + attributes: [topic] tests: config: diff --git a/metric-metadata/kafkareceiver.yaml b/metric-metadata/kafkareceiver.yaml index 830ef54..aeef7cf 100644 --- a/metric-metadata/kafkareceiver.yaml +++ b/metric-metadata/kafkareceiver.yaml @@ -4,69 +4,225 @@ status: class: receiver stability: beta: [metrics, logs, traces] + development: [profiles] distributions: - - core - - contrib + - core + - contrib codeowners: - active: [pavolloffay, MovieStoreGuy, axw] + active: [pavolloffay, MovieStoreGuy, axw, paulojmdias] # TODO: Update the receiver to pass the tests tests: skip_lifecycle: true + goleak: + ignore: + top: + - github.com/twmb/franz-go/pkg/kfake.(*group).manage + +attributes: + node_id: + description: The Kafka node ID. + type: int + outcome: + description: The operation outcome. + type: string + enum: [success, failure] + partition: + description: The Kafka topic partition. + type: int + topic: + description: The Kafka topic. + type: string telemetry: metrics: - kafka_receiver_messages: + kafka_broker_closed: + enabled: true + description: The total number of connections closed. + extended_documentation: Only produced when franz-go is enabled. + optional: true + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id] + kafka_broker_connects: enabled: true - description: Number of received messages + description: The total number of connections opened. + extended_documentation: Only produced when franz-go is enabled. + optional: true + stability: development unit: "1" sum: value_type: int monotonic: true + attributes: [node_id, outcome] + kafka_broker_throttling_duration: + enabled: true + stability: deprecated + description: The throttling duration in ms imposed by the broker when receiving messages. + extended_documentation: Only produced when franz-go is enabled. Deprecated in favor of kafka_broker_throttling_latency. + optional: true + unit: ms + histogram: + value_type: int + attributes: [node_id] + warnings: + if_enabled: This metric is deprecated in favor of kafka_broker_throttling_latency and will be removed soon. + kafka_broker_throttling_latency: + enabled: true + description: The throttling latency in seconds imposed by the broker when receiving records. + extended_documentation: Only produced when franz-go is enabled. + optional: true + stability: development + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100] + attributes: [node_id] + kafka_receiver_bytes: + enabled: true + description: The size in bytes of received records seen by the broker. + extended_documentation: Only produced when franz-go is enabled. + optional: true + stability: development + unit: By + sum: + value_type: int + monotonic: true + attributes: [node_id, topic, partition, outcome] + kafka_receiver_bytes_uncompressed: + enabled: true + description: The uncompressed size in bytes of received records seen by the client. + stability: development + unit: By + sum: + value_type: int + monotonic: true + attributes: [node_id, topic, partition, outcome] kafka_receiver_current_offset: enabled: true description: Current message offset + stability: development unit: "1" gauge: value_type: int + attributes: [topic, partition] + kafka_receiver_latency: + enabled: true + stability: deprecated + description: The time it took in ms to receive a batch of messages. + extended_documentation: Only produced when franz-go is enabled. Deprecated in favor of kafka_receiver_read_latency. + unit: ms + histogram: + value_type: int + attributes: [node_id, topic, partition, outcome] + warnings: + if_enabled: This metric is deprecated in favor of kafka_receiver_read_latency and will be removed soon. + kafka_receiver_messages: + enabled: true + stability: deprecated + description: The number of received messages. + extended_documentation: Deprecated in favor of kafka_receiver_records. + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [node_id, topic, partition, outcome] + warnings: + if_enabled: This metric is deprecated in favor of kafka_receiver_records and will be removed soon. kafka_receiver_offset_lag: enabled: true description: Current offset lag + stability: development unit: "1" gauge: value_type: int + attributes: [topic, partition] + kafka_receiver_partition_close: + enabled: true + description: Number of finished partitions + stability: development + unit: "1" + sum: + value_type: int + monotonic: true kafka_receiver_partition_start: enabled: true description: Number of started partitions + stability: development unit: "1" sum: value_type: int monotonic: true - kafka_receiver_partition_close: + kafka_receiver_read_latency: enabled: true - description: Number of finished partitions + description: The time it took in seconds to receive a batch of records. + extended_documentation: Only produced when franz-go is enabled. + stability: development + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100] + attributes: [node_id, topic, partition, outcome] + kafka_receiver_records: + enabled: true + description: The number of received records. + stability: development unit: "1" sum: value_type: int monotonic: true + attributes: [node_id, topic, partition, outcome] + kafka_receiver_records_delay: + enabled: true + optional: true + description: The time in seconds between producing and receiving a batch of records. + extended_documentation: | + Optional, only reported when enabled via config. + Note that this metric may slow down high-volume consuming. + Only produced when franz-go is enabled. + This metric is reported with an assumption that the exporter and the receiver clocks are synchronized. + stability: development + unit: s + histogram: + value_type: double + bucket_boundaries: [0, 0.005, 0.010, 0.025, 0.050, 0.075, 0.100, 0.250, 0.500, 0.750, 1, 2.5, 5, 7.5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] + attributes: [topic, partition] + kafka_receiver_unmarshal_failed_log_records: + enabled: true + description: Number of log records failed to be unmarshaled + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + attributes: [topic, partition] kafka_receiver_unmarshal_failed_metric_points: enabled: true description: Number of metric points failed to be unmarshaled + stability: development unit: "1" sum: value_type: int monotonic: true - kafka_receiver_unmarshal_failed_log_records: + attributes: [topic, partition] + kafka_receiver_unmarshal_failed_profiles: enabled: true - description: Number of log records failed to be unmarshaled + description: Number of profiles failed to be unmarshaled + stability: development unit: "1" sum: value_type: int monotonic: true + attributes: [topic, partition] kafka_receiver_unmarshal_failed_spans: enabled: true description: Number of spans failed to be unmarshaled + stability: development unit: "1" sum: value_type: int monotonic: true + attributes: [topic, partition] diff --git a/metric-metadata/kafkatopicsobserver.yaml b/metric-metadata/kafkatopicsobserver.yaml index 2bec2bd..8339fe1 100644 --- a/metric-metadata/kafkatopicsobserver.yaml +++ b/metric-metadata/kafkatopicsobserver.yaml @@ -1,3 +1,4 @@ +display_name: Kafka Topics Observer Extension type: kafkatopics_observer status: diff --git a/metric-metadata/kubeletstatsreceiver.yaml b/metric-metadata/kubeletstatsreceiver.yaml index 618628b..58ff6ad 100644 --- a/metric-metadata/kubeletstatsreceiver.yaml +++ b/metric-metadata/kubeletstatsreceiver.yaml @@ -9,487 +9,540 @@ status: active: [dmitryax, TylerHelmuth, ChrsMark] resource_attributes: - k8s.node.name: - description: "The name of the Node" + aws.volume.id: + description: "[DEPRECATED] The id of the AWS Volume" enabled: true type: string - k8s.pod.uid: - description: "The UID of the Pod" + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" + container.id: + description: "Container id used to identify container" enabled: true type: string - k8s.pod.name: - description: "The name of the Pod" + fs.type: + description: "[DEPRECATED] The filesystem type of the Volume" enabled: true type: string - k8s.namespace.name: - description: "The name of the namespace that the pod is running in" + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" + gce.pd.name: + description: "[DEPRECATED] The name of the persistent disk in GCE" enabled: true type: string - k8s.container.name: - description: "Container name used by container runtime" + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" + glusterfs.endpoints.name: + description: "[DEPRECATED] The endpoint name that details Glusterfs topology" enabled: true type: string - container.id: - description: "Container id used to identify container" + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" + glusterfs.path: + description: "[DEPRECATED] Glusterfs volume path" enabled: true type: string - k8s.volume.name: - description: "The name of the Volume" + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" + + k8s.container.name: + description: "Container name used by container runtime" enabled: true type: string - k8s.volume.type: - description: "The type of the Volume" + k8s.namespace.name: + description: "The name of the namespace that the pod is running in" enabled: true type: string - k8s.persistentvolumeclaim.name: - description: "The name of the Persistent Volume Claim" + k8s.node.name: + description: "The name of the Node" enabled: true type: string - aws.volume.id: - description: "The id of the AWS Volume" + k8s.persistentvolumeclaim.name: + description: "The name of the Persistent Volume Claim" enabled: true type: string - fs.type: - description: "The filesystem type of the Volume" + k8s.pod.name: + description: "The name of the Pod" enabled: true type: string - partition: - description: "The partition in the Volume" + k8s.pod.uid: + description: "The UID of the Pod" enabled: true type: string - gce.pd.name: - description: "The name of the persistent disk in GCE" + k8s.volume.name: + description: "The name of the Volume" enabled: true type: string - glusterfs.endpoints.name: - description: "The endpoint name that details Glusterfs topology" + k8s.volume.type: + description: "The type of the Volume" enabled: true type: string - glusterfs.path: - description: "Glusterfs volume path" + partition: + description: "[DEPRECATED] The partition in the Volume" enabled: true type: string - + warnings: + if_enabled: "This resource_attribute is deprecated and will be removed soon" attributes: - interface: - description: Name of the network interface. - type: string - direction: description: Direction of flow of bytes/operations (receive or transmit). type: string enum: [receive, transmit] + interface: + description: Name of the network interface. + type: string metrics: - k8s.node.cpu.usage: - enabled: true - description: "Total CPU usage (sum of all cores per second) averaged over the sample window" - unit: "{cpu}" - gauge: - value_type: double - attributes: [] - k8s.node.cpu.utilization: - enabled: false - description: "Node CPU utilization" - unit: "1" - gauge: - value_type: double - attributes: [] - k8s.node.cpu.time: + container.cpu.time: enabled: true description: "Total cumulative CPU time (sum of all cores) spent by the container/pod/node since its creation" unit: s + stability: development sum: value_type: double monotonic: true aggregation_temporality: cumulative attributes: [] - k8s.node.memory.available: + container.cpu.usage: enabled: true - description: "Node memory available" + description: "Total CPU usage (sum of all cores per second) averaged over the sample window" + unit: "{cpu}" + stability: development + gauge: + value_type: double + attributes: [] + container.filesystem.available: + enabled: true + description: "Container filesystem available" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.memory.usage: + container.filesystem.capacity: enabled: true - description: "Node memory usage" + description: "Container filesystem capacity" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.memory.rss: + container.filesystem.usage: enabled: true - description: "Node memory rss" + description: "Container filesystem usage" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.memory.working_set: + container.memory.available: enabled: true - description: "Node memory working_set" + description: "Container memory available" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.memory.page_faults: + container.memory.major_page_faults: enabled: true - description: "Node memory page_faults" + description: "Container memory major_page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - k8s.node.memory.major_page_faults: + container.memory.page_faults: enabled: true - description: "Node memory major_page_faults" + description: "Container memory page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - k8s.node.filesystem.available: + container.memory.rss: enabled: true - description: "Node filesystem available" + description: "Container memory rss" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.filesystem.capacity: + container.memory.usage: enabled: true - description: "Node filesystem capacity" + description: "Container memory usage" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.filesystem.usage: + container.memory.working_set: enabled: true - description: "Node filesystem usage" + description: "Container memory working_set" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.node.network.io: - enabled: true - description: "Node network IO" - unit: By - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: ["interface", "direction"] - k8s.node.network.errors: - enabled: true - description: "Node network errors" - unit: "1" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: ["interface", "direction"] - k8s.node.uptime: + container.uptime: enabled: false - description: "The time since the node started" + description: "The time since the container started" unit: s + stability: development sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] - k8s.pod.cpu.usage: - enabled: true - description: "Total CPU usage (sum of all cores per second) averaged over the sample window" - unit: "{cpu}" - gauge: - value_type: double - attributes: [ ] - k8s.pod.cpu.utilization: + k8s.container.cpu.node.utilization: enabled: false - description: "Pod CPU utilization" + description: "Container cpu utilization as a ratio of the node's capacity" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.cpu.time: - enabled: true - description: "Total cumulative CPU time (sum of all cores) spent by the container/pod/node since its creation" - unit: s - sum: - value_type: double - monotonic: true - aggregation_temporality: cumulative - attributes: [ ] - k8s.pod.memory.available: - enabled: true - description: "Pod memory available" - unit: By - gauge: - value_type: int attributes: [] - k8s.pod.memory.usage: - enabled: true - description: "Pod memory usage" - unit: By - gauge: - value_type: int - attributes: [] - k8s.pod.cpu.node.utilization: + k8s.container.cpu_limit_utilization: enabled: false - description: "Pod cpu utilization as a ratio of the node's capacity" + description: "Container cpu utilization as a ratio of the container's limits" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.cpu_limit_utilization: + attributes: [] + k8s.container.cpu_request_utilization: enabled: false - description: "Pod cpu utilization as a ratio of the pod's total container limits. If any container is missing a limit the metric is not emitted." + description: "Container cpu utilization as a ratio of the container's requests" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.cpu_request_utilization: + attributes: [] + k8s.container.memory.node.utilization: enabled: false - description: "Pod cpu utilization as a ratio of the pod's total container requests. If any container is missing a request the metric is not emitted." + description: "Container memory utilization as a ratio of the node's capacity" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.memory.node.utilization: + attributes: [] + k8s.container.memory_limit_utilization: enabled: false - description: "Pod memory utilization as a ratio of the node's capacity" + description: "Container memory utilization as a ratio of the container's limits" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.memory_limit_utilization: + attributes: [] + k8s.container.memory_request_utilization: enabled: false - description: "Pod memory utilization as a ratio of the pod's total container limits. If any container is missing a limit the metric is not emitted." + description: "Container memory utilization as a ratio of the container's requests" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.memory_request_utilization: - enabled: false - description: "Pod memory utilization as a ratio of the pod's total container requests. If any container is missing a request the metric is not emitted." - unit: "1" + attributes: [] + k8s.node.cpu.time: + enabled: true + description: "Total cumulative CPU time (sum of all cores) spent by the container/pod/node since its creation" + unit: s + stability: development + sum: + value_type: double + monotonic: true + aggregation_temporality: cumulative + attributes: [] + k8s.node.cpu.usage: + enabled: true + description: "Total CPU usage (sum of all cores per second) averaged over the sample window" + unit: "{cpu}" + stability: development gauge: value_type: double - attributes: [ ] - k8s.pod.memory.rss: + attributes: [] + k8s.node.filesystem.available: enabled: true - description: "Pod memory rss" + description: "Node filesystem available" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.pod.memory.working_set: + k8s.node.filesystem.capacity: enabled: true - description: "Pod memory working_set" + description: "Node filesystem capacity" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.pod.memory.page_faults: + k8s.node.filesystem.usage: enabled: true - description: "Pod memory page_faults" + description: "Node filesystem usage" + unit: By + stability: development + gauge: + value_type: int + attributes: [] + k8s.node.memory.available: + enabled: true + description: "Node memory available" + unit: By + stability: development + gauge: + value_type: int + attributes: [] + k8s.node.memory.major_page_faults: + enabled: true + description: "Node memory major_page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - k8s.pod.memory.major_page_faults: + k8s.node.memory.page_faults: enabled: true - description: "Pod memory major_page_faults" + description: "Node memory page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - k8s.pod.filesystem.available: + k8s.node.memory.rss: enabled: true - description: "Pod filesystem available" + description: "Node memory rss" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.pod.filesystem.capacity: + k8s.node.memory.usage: enabled: true - description: "Pod filesystem capacity" + description: "Node memory usage" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.pod.filesystem.usage: + k8s.node.memory.working_set: enabled: true - description: "Pod filesystem usage" + description: "Node memory working_set" unit: By + stability: development gauge: value_type: int attributes: [] - k8s.pod.network.io: + k8s.node.network.errors: enabled: true - description: "Pod network IO" - unit: By + description: "Node network errors" + unit: "1" + stability: development sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: ["interface", "direction"] - k8s.pod.network.errors: + k8s.node.network.io: enabled: true - description: "Pod network errors" - unit: "1" + description: "Node network IO" + unit: By + stability: development sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: ["interface", "direction"] - k8s.pod.uptime: + k8s.node.uptime: enabled: false - description: "The time since the pod started" + description: "The time since the node started" unit: s + stability: development sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] - container.cpu.usage: - enabled: true - description: "Total CPU usage (sum of all cores per second) averaged over the sample window" - unit: "{cpu}" - gauge: - value_type: double - attributes: [ ] - container.cpu.utilization: + k8s.pod.cpu.node.utilization: enabled: false - description: "Container CPU utilization" + description: "Pod cpu utilization as a ratio of the node's capacity" unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - container.cpu.time: + attributes: [] + k8s.pod.cpu.time: enabled: true description: "Total cumulative CPU time (sum of all cores) spent by the container/pod/node since its creation" unit: s + stability: development sum: value_type: double monotonic: true aggregation_temporality: cumulative - attributes: [ ] - container.memory.available: - enabled: true - description: "Container memory available" - unit: By - gauge: - value_type: int attributes: [] - container.memory.usage: + k8s.pod.cpu.usage: enabled: true - description: "Container memory usage" - unit: By - gauge: - value_type: int - attributes: [] - k8s.container.cpu.node.utilization: - enabled: false - description: "Container cpu utilization as a ratio of the node's capacity" - unit: "1" - gauge: - value_type: double - attributes: [ ] - k8s.container.cpu_limit_utilization: - enabled: false - description: "Container cpu utilization as a ratio of the container's limits" - unit: "1" + description: "Total CPU usage (sum of all cores per second) averaged over the sample window" + unit: "{cpu}" + stability: development gauge: value_type: double - attributes: [ ] - k8s.container.cpu_request_utilization: + attributes: [] + k8s.pod.cpu_limit_utilization: enabled: false - description: "Container cpu utilization as a ratio of the container's requests" + description: "Pod cpu utilization as a ratio of the pod's total container limits. If any container is missing a limit the metric is not emitted." unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.container.memory.node.utilization: + attributes: [] + k8s.pod.cpu_request_utilization: enabled: false - description: "Container memory utilization as a ratio of the node's capacity" + description: "Pod cpu utilization as a ratio of the pod's total container requests. If any container is missing a request the metric is not emitted." unit: "1" + stability: development gauge: value_type: double - attributes: [ ] - k8s.container.memory_limit_utilization: - enabled: false - description: "Container memory utilization as a ratio of the container's limits" - unit: "1" + attributes: [] + k8s.pod.filesystem.available: + enabled: true + description: "Pod filesystem available" + unit: By + stability: development gauge: - value_type: double - attributes: [ ] - k8s.container.memory_request_utilization: - enabled: false - description: "Container memory utilization as a ratio of the container's requests" - unit: "1" + value_type: int + attributes: [] + k8s.pod.filesystem.capacity: + enabled: true + description: "Pod filesystem capacity" + unit: By + stability: development gauge: - value_type: double - attributes: [ ] - container.memory.rss: + value_type: int + attributes: [] + k8s.pod.filesystem.usage: enabled: true - description: "Container memory rss" + description: "Pod filesystem usage" unit: By + stability: development gauge: value_type: int attributes: [] - container.memory.working_set: + k8s.pod.memory.available: enabled: true - description: "Container memory working_set" + description: "Pod memory available" unit: By + stability: development gauge: value_type: int attributes: [] - container.memory.page_faults: + k8s.pod.memory.major_page_faults: enabled: true - description: "Container memory page_faults" + description: "Pod memory major_page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - container.memory.major_page_faults: + k8s.pod.memory.node.utilization: + enabled: false + description: "Pod memory utilization as a ratio of the node's capacity" + unit: "1" + stability: development + gauge: + value_type: double + attributes: [] + k8s.pod.memory.page_faults: enabled: true - description: "Container memory major_page_faults" + description: "Pod memory page_faults" unit: "1" + stability: development gauge: value_type: int attributes: [] - container.filesystem.available: + k8s.pod.memory.rss: enabled: true - description: "Container filesystem available" + description: "Pod memory rss" unit: By + stability: development gauge: value_type: int attributes: [] - container.filesystem.capacity: + k8s.pod.memory.usage: enabled: true - description: "Container filesystem capacity" + description: "Pod memory usage" unit: By + stability: development gauge: value_type: int attributes: [] - container.filesystem.usage: + k8s.pod.memory.working_set: enabled: true - description: "Container filesystem usage" + description: "Pod memory working_set" unit: By + stability: development gauge: value_type: int attributes: [] - container.uptime: + k8s.pod.memory_limit_utilization: enabled: false - description: "The time since the container started" + description: "Pod memory utilization as a ratio of the pod's total container limits. If any container is missing a limit the metric is not emitted." + unit: "1" + stability: development + gauge: + value_type: double + attributes: [] + k8s.pod.memory_request_utilization: + enabled: false + description: "Pod memory utilization as a ratio of the pod's total container requests. If any container is missing a request the metric is not emitted." + unit: "1" + stability: development + gauge: + value_type: double + attributes: [] + k8s.pod.network.errors: + enabled: true + description: "Pod network errors" + unit: "1" + stability: development + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: ["interface", "direction"] + k8s.pod.network.io: + enabled: true + description: "Pod network IO" + unit: By + stability: development + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: ["interface", "direction"] + k8s.pod.uptime: + enabled: false + description: "The time since the pod started" unit: s + stability: development sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] + k8s.pod.volume.usage: + enabled: false + description: "The number of used bytes in the pod volume." + unit: By + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [] k8s.volume.available: enabled: true description: "The number of available bytes in the volume." unit: By + stability: development gauge: value_type: int attributes: [] @@ -497,6 +550,7 @@ metrics: enabled: true description: "The total capacity in bytes of the volume." unit: By + stability: development gauge: value_type: int attributes: [] @@ -504,6 +558,7 @@ metrics: enabled: true description: "The total inodes in the filesystem." unit: "1" + stability: development gauge: value_type: int attributes: [] @@ -511,6 +566,7 @@ metrics: enabled: true description: "The free inodes in the filesystem." unit: "1" + stability: development gauge: value_type: int attributes: [] @@ -518,6 +574,7 @@ metrics: enabled: true description: "The inodes used by the filesystem. This may not equal inodes - free because filesystem may share inodes with other filesystems." unit: "1" + stability: development gauge: value_type: int attributes: [] @@ -528,4 +585,4 @@ tests: key_file: "testdata/testkey.key" cert_file: "testdata/testcert.crt" goleak: - skip: true \ No newline at end of file + skip: true diff --git a/metric-metadata/lambda.yaml b/metric-metadata/lambda.yaml index 8e48faf..812b554 100644 --- a/metric-metadata/lambda.yaml +++ b/metric-metadata/lambda.yaml @@ -3,18 +3,6 @@ type: resourcedetectionprocessor/lambda parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true - cloud.platform: - description: The cloud.platform - type: string - enabled: true - cloud.region: - description: The cloud.region - type: string - enabled: true aws.log.group.names: description: The aws.log.group.names type: slice @@ -23,12 +11,16 @@ resource_attributes: description: The aws.log.stream.names type: slice enabled: true - faas.name: - description: faas.name + cloud.platform: + description: The cloud.platform type: string enabled: true - faas.version: - description: The faas.version + cloud.provider: + description: The cloud.provider + type: string + enabled: true + cloud.region: + description: The cloud.region type: string enabled: true faas.instance: @@ -39,6 +31,14 @@ resource_attributes: description: The faas.max_memory type: string enabled: true + faas.name: + description: faas.name + type: string + enabled: true + faas.version: + description: The faas.version + type: string + enabled: true tests: skip_lifecycle: true diff --git a/metric-metadata/loadbalancingexporter.yaml b/metric-metadata/loadbalancingexporter.yaml index d870237..d93fd71 100644 --- a/metric-metadata/loadbalancingexporter.yaml +++ b/metric-metadata/loadbalancingexporter.yaml @@ -1,4 +1,5 @@ type: loadbalancing +display_name: Load Balancing Exporter status: class: exporter @@ -12,9 +13,9 @@ status: seeking_new: true attributes: - success: - description: Whether an outcome was successful - type: bool + endpoint: + description: The endpoint of the backend + type: string resolver: description: Resolver used type: string @@ -23,52 +24,58 @@ attributes: - dns - k8s - static - endpoint: - description: The endpoint of the backend - type: string + success: + description: Whether an outcome was successful + type: bool telemetry: metrics: - loadbalancer_num_resolutions: - attributes: [success, resolver] - enabled: true - description: Number of times the resolver has triggered new resolutions. - unit: "{resolutions}" - sum: - value_type: int - monotonic: true - loadbalancer_num_backends: - attributes: [resolver] - enabled: true - description: Current number of backends in use. - unit: "{backends}" - gauge: - value_type: int loadbalancer_backend_latency: attributes: [endpoint] enabled: true + stability: development description: Response latency in ms for the backends. unit: ms histogram: value_type: int bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000] + loadbalancer_backend_outcome: + attributes: [success] + enabled: true + stability: development + description: Number of successes and failures for each endpoint. + unit: "{outcomes}" + sum: + value_type: int + monotonic: true + loadbalancer_num_backend_updates: attributes: [resolver] enabled: true + stability: development description: Number of times the list of backends was updated. unit: "{updates}" sum: value_type: int monotonic: true - loadbalancer_backend_outcome: - attributes: [success] + loadbalancer_num_backends: + attributes: [resolver] enabled: true - description: Number of successes and failures for each endpoint. - unit: "{outcomes}" + stability: development + description: Current number of backends in use. + unit: "{backends}" + gauge: + value_type: int + loadbalancer_num_resolutions: + attributes: [success, resolver] + enabled: true + stability: development + description: Number of times the resolver has triggered new resolutions. + unit: "{resolutions}" sum: value_type: int monotonic: true - + tests: config: routing_key: "service" @@ -83,3 +90,10 @@ tests: - backend-3:4317 - backend-4:4317 expect_consumer_error: true + goleak: + ignore: + top: + # Ignore goroutines spawned by net.Resolver for DNS lookups on Windows + # These can remain in syscall state during test cleanup + - internal/poll.runtime_pollWait + - syscall.Syscall6 diff --git a/metric-metadata/loadscraper.yaml b/metric-metadata/loadscraper.yaml index c034d42..dd24f63 100644 --- a/metric-metadata/loadscraper.yaml +++ b/metric-metadata/loadscraper.yaml @@ -11,23 +11,26 @@ status: sem_conv_version: 1.9.0 metrics: - system.cpu.load_average.1m: + system.cpu.load_average.15m: enabled: true - description: Average CPU Load over 1 minute. + description: Average CPU Load over 15 minutes. unit: "{thread}" + stability: development gauge: value_type: double - system.cpu.load_average.5m: + system.cpu.load_average.1m: enabled: true - description: Average CPU Load over 5 minutes. + description: Average CPU Load over 1 minute. unit: "{thread}" + stability: development gauge: value_type: double - system.cpu.load_average.15m: + system.cpu.load_average.5m: enabled: true - description: Average CPU Load over 15 minutes. + description: Average CPU Load over 5 minutes. unit: "{thread}" + stability: development gauge: value_type: double diff --git a/metric-metadata/logdedupprocessor.yaml b/metric-metadata/logdedupprocessor.yaml index 9e86929..212565a 100644 --- a/metric-metadata/logdedupprocessor.yaml +++ b/metric-metadata/logdedupprocessor.yaml @@ -1,5 +1,10 @@ +display_name: Log DeDuplication Processor type: logdedup +description: | + The Log DeDuplication Processor is used to deduplicate logs by detecting identical logs over a range of time and + emitting a single log with the count of logs that were deduplicated. + status: class: processor stability: @@ -17,6 +22,7 @@ telemetry: metrics: dedup_processor_aggregated_logs: description: Number of log records that were aggregated together. + stability: development unit: "{records}" enabled: true histogram: diff --git a/metric-metadata/logicmonitorexporter.yaml b/metric-metadata/logicmonitorexporter.yaml index 8f0d9e8..3c4458e 100644 --- a/metric-metadata/logicmonitorexporter.yaml +++ b/metric-metadata/logicmonitorexporter.yaml @@ -1,4 +1,5 @@ type: logicmonitor +display_name: LogicMonitor Exporter status: class: exporter diff --git a/metric-metadata/logstransformprocessor.yaml b/metric-metadata/logstransformprocessor.yaml index 8e3aa5a..dcfdfc6 100644 --- a/metric-metadata/logstransformprocessor.yaml +++ b/metric-metadata/logstransformprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Logs Transform Processor type: logstransform status: diff --git a/metric-metadata/logzioexporter.yaml b/metric-metadata/logzioexporter.yaml index 0bbdcd8..84cb207 100644 --- a/metric-metadata/logzioexporter.yaml +++ b/metric-metadata/logzioexporter.yaml @@ -1,4 +1,5 @@ type: logzio +display_name: Logz.io Exporter status: class: exporter diff --git a/metric-metadata/lookupprocessor.yaml b/metric-metadata/lookupprocessor.yaml new file mode 100644 index 0000000..adf8e1e --- /dev/null +++ b/metric-metadata/lookupprocessor.yaml @@ -0,0 +1,25 @@ +display_name: Lookup Processor +type: lookup + +description: | + The lookup processor enriches telemetry signals by performing external lookups to retrieve additional data. It + evaluates an [OTTL](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/pkg/ottl/README.md) value + expression to extract a lookup key, queries a lookup source, and writes the results as new attributes. + + Currently supports logs, with metrics and traces support planned. + +status: + class: processor + stability: + development: [logs] + distributions: [] + codeowners: + active: [jsvd, dehaansa, VihasMakwana] + +tests: + config: + lookups: + - key: log.attributes["test.key"] + attributes: + - destination: test.result + default: "not-found" diff --git a/metric-metadata/macosunifiedloggingreceiver.yaml b/metric-metadata/macosunifiedloggingreceiver.yaml new file mode 100644 index 0000000..109289f --- /dev/null +++ b/metric-metadata/macosunifiedloggingreceiver.yaml @@ -0,0 +1,10 @@ +type: macosunifiedlogging + +status: + class: receiver + stability: + alpha: [logs] + codeowners: + active: [Caleb-Hurshman, atoulme] + distributions: [contrib] + unsupported_platforms: [linux, windows] diff --git a/metric-metadata/memcachedreceiver.yaml b/metric-metadata/memcachedreceiver.yaml index 9afdf7f..34565c8 100644 --- a/metric-metadata/memcachedreceiver.yaml +++ b/metric-metadata/memcachedreceiver.yaml @@ -15,47 +15,59 @@ attributes: description: The type of command. type: string enum: - - get - - set - - flush - - touch + - get + - set + - flush + - touch direction: description: Direction of data flow. type: string enum: - - sent - - received - type: - description: Result of cache request. - type: string - enum: - - hit - - miss + - sent + - received operation: description: The type of operation. type: string enum: - - increment - - decrement - - get + - increment + - decrement + - get state: description: The type of CPU usage. type: string enum: - - system - - user + - system + - user + type: + description: Result of cache request. + type: string + enum: + - hit + - miss metrics: memcached.bytes: enabled: true description: Current number of bytes used by this server to store items. + stability: development unit: By gauge: value_type: int attributes: [] + memcached.commands: + enabled: true + description: Commands executed. + stability: development + unit: "{commands}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [command] memcached.connections.current: enabled: true description: The current number of open connections. + stability: development unit: "{connections}" sum: value_type: int @@ -65,24 +77,27 @@ metrics: memcached.connections.total: enabled: true description: Total number of connections opened since the server started running. + stability: development unit: "{connections}" sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] - memcached.commands: + memcached.cpu.usage: enabled: true - description: Commands executed. - unit: "{commands}" + description: Accumulated user and system time. + stability: development + unit: s sum: - value_type: int + value_type: double monotonic: true aggregation_temporality: cumulative - attributes: [command] + attributes: [state] memcached.current_items: enabled: true description: Number of items currently stored in the cache. + stability: development unit: "{items}" sum: value_type: int @@ -92,6 +107,7 @@ metrics: memcached.evictions: enabled: true description: Cache item evictions. + stability: development unit: "{evictions}" sum: value_type: int @@ -101,40 +117,35 @@ metrics: memcached.network: enabled: true description: Bytes transferred over the network. + stability: development unit: by sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [direction] - memcached.operations: - enabled: true - description: Operation counts. - unit: "{operations}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - attributes: [type,operation] memcached.operation_hit_ratio: enabled: true description: Hit ratio for operations, expressed as a percentage value between 0.0 and 100.0. + stability: development unit: '%' gauge: value_type: double attributes: [operation] - memcached.cpu.usage: + memcached.operations: enabled: true - description: Accumulated user and system time. - unit: s + description: Operation counts. + stability: development + unit: "{operations}" sum: - value_type: double + value_type: int monotonic: true aggregation_temporality: cumulative - attributes: [state] + attributes: [type, operation] memcached.threads: enabled: true description: Number of threads used by the memcached instance. + stability: development unit: "{threads}" sum: value_type: int diff --git a/metric-metadata/memoryscraper.yaml b/metric-metadata/memoryscraper.yaml index 072e8aa..506ed6c 100644 --- a/metric-metadata/memoryscraper.yaml +++ b/metric-metadata/memoryscraper.yaml @@ -15,58 +15,135 @@ attributes: description: Breakdown of memory usage by type. type: string enum: [buffered, cached, inactive, free, slab_reclaimable, slab_unreclaimable, used] + system.memory.linux.hugepages.state: + description: Breakdown of hugepages usage by state. + type: string + enum: [free, used] metrics: + system.linux.memory.available: + enabled: false + description: An estimate of how much memory is available for starting new applications, without swapping. This is a more accurate alternative than system.memory.usage with state=free. (Linux only) + unit: By + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + + system.linux.memory.dirty: + enabled: false + description: The amount of dirty memory according to `/proc/meminfo`. + unit: By + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + system.memory.limit: enabled: false description: Total bytes of memory available. unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false - system.memory.usage: - enabled: true - description: Bytes of memory in use. + system.memory.linux.hugepages.limit: + enabled: false + description: Total number of hugepages available. + unit: "{page}" + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + + system.memory.linux.hugepages.page_size: + enabled: false + description: System hugepage size in bytes. unit: By + stability: development + gauge: + value_type: int + aggregation_temporality: cumulative + monotonic: false + + system.memory.linux.hugepages.reserved: + enabled: false + description: Number of reserved hugepages (hugepages for which a commitment to allocate has been made, but no allocation has yet been made). This is reported as a separate metric rather than a usage state because reserved pages are already counted in free pages - they represent a subset of free pages that cannot be used for non-reserved allocations. + unit: "{page}" + stability: development + gauge: + value_type: int + + system.memory.linux.hugepages.surplus: + enabled: false + description: Number of surplus hugepages (overcommitted hugepages beyond the persistent pool). This is reported as a separate metric rather than a usage state because surplus pages can be in either used or free state, and including them would break the semantic convention that usage states must sum to the limit. + unit: "{page}" + stability: development + gauge: + value_type: int + + system.memory.linux.hugepages.usage: + enabled: false + description: Number of hugepages in use by state. + unit: "{page}" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false - attributes: [state] + attributes: [system.memory.linux.hugepages.state] - system.memory.utilization: + system.memory.linux.hugepages.utilization: enabled: false - description: Percentage of memory bytes in use. + description: Percentage of hugepages in use by state. unit: "1" + stability: development gauge: value_type: double - attributes: [state] + attributes: [system.memory.linux.hugepages.state] - system.memory.page_size: + system.memory.linux.shared: enabled: false - description: A constant value for the system's configured page size. + description: Shared memory usage, including tmpfs filesystems and System V/POSIX shared memory. Only supported on Linux. unit: By - gauge: + stability: development + sum: value_type: int aggregation_temporality: cumulative monotonic: false - system.linux.memory.available: + + system.memory.page_size: enabled: false - description: An estimate of how much memory is available for starting new applications, without swapping. This is a more accurate alternative than system.memory.usage with state=free. (Linux only) + description: A constant value for the system's configured page size. unit: By - sum: + stability: development + gauge: value_type: int aggregation_temporality: cumulative monotonic: false - system.linux.memory.dirty: - enabled: false - description: The amount of dirty memory according to `/proc/meminfo`. + system.memory.usage: + enabled: true + description: Bytes of memory in use. unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false + attributes: [state] + + system.memory.utilization: + enabled: false + description: Percentage of memory bytes in use. + unit: "1" + stability: development + gauge: + value_type: double + attributes: [state] diff --git a/metric-metadata/metrics.yaml b/metric-metadata/metrics.yaml index 686253e..826ebb7 100644 --- a/metric-metadata/metrics.yaml +++ b/metric-metadata/metrics.yaml @@ -1,4 +1,5 @@ status: disable_codecov_badge: true codeowners: - active: [sh0rez, RichieSams] + active: [RichieSams] + emeritus: [tombrk] diff --git a/metric-metadata/metricsaslogsconnector.yaml b/metric-metadata/metricsaslogsconnector.yaml new file mode 100644 index 0000000..c4d7ae1 --- /dev/null +++ b/metric-metadata/metricsaslogsconnector.yaml @@ -0,0 +1,10 @@ +type: metricsaslogs +display_name: Metrics as Logs Connector + +status: + class: connector + stability: + development: [metrics_to_logs] + distributions: [] + codeowners: + active: [atoulme] \ No newline at end of file diff --git a/metric-metadata/metricsgenerationprocessor.yaml b/metric-metadata/metricsgenerationprocessor.yaml index 241737b..0609ee7 100644 --- a/metric-metadata/metricsgenerationprocessor.yaml +++ b/metric-metadata/metricsgenerationprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Metrics Generation Processor type: metricsgeneration status: diff --git a/metric-metadata/metricstarttimeprocessor.yaml b/metric-metadata/metricstarttimeprocessor.yaml index a394362..67bdd2e 100644 --- a/metric-metadata/metricstarttimeprocessor.yaml +++ b/metric-metadata/metricstarttimeprocessor.yaml @@ -1,9 +1,17 @@ +display_name: Metric Start Time Processor type: metricstarttime + +description: | + The Metric Start Time Processor (`metricstarttime`) is used to set the start + time for metric points with a cumulative aggregation temporality. It is + commonly used with the `prometheus` receiver, which usually produces metric + points without a start time. + status: class: processor stability: - alpha: [metrics] + beta: [metrics] distributions: [contrib] codeowners: active: [dashpole, ridwanmsharif] diff --git a/metric-metadata/metricstransformprocessor.yaml b/metric-metadata/metricstransformprocessor.yaml index 18145b3..5268518 100644 --- a/metric-metadata/metricstransformprocessor.yaml +++ b/metric-metadata/metricstransformprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Metrics Transform Processor type: metricstransform status: diff --git a/metric-metadata/mezmoexporter.yaml b/metric-metadata/mezmoexporter.yaml index 281b1cb..dc0ee8a 100644 --- a/metric-metadata/mezmoexporter.yaml +++ b/metric-metadata/mezmoexporter.yaml @@ -1,4 +1,5 @@ type: mezmo +display_name: Mezmo Exporter status: class: exporter diff --git a/metric-metadata/mongodbatlasreceiver.yaml b/metric-metadata/mongodbatlasreceiver.yaml index 7ba5fbc..05fc9b4 100644 --- a/metric-metadata/mongodbatlasreceiver.yaml +++ b/metric-metadata/mongodbatlasreceiver.yaml @@ -1,4 +1,4 @@ -type: mongodbatlas +type: mongodb_atlas status: class: receiver @@ -6,41 +6,33 @@ status: beta: [metrics, logs] distributions: [contrib] codeowners: - active: [justinianvoss22] + active: [justinianvoss22, dyl10s, ishleenk17] seeking_new: true resource_attributes: - mongodb_atlas.org_name: - description: Organization Name - enabled: true + mongodb_atlas.cluster.name: + description: Cluster Name + enabled: false type: string - mongodb_atlas.project.name: - description: Project Name + mongodb_atlas.db.name: + description: Name of the Database enabled: true type: string - mongodb_atlas.project.id: - description: Project ID + mongodb_atlas.disk.partition: + description: Name of a disk partition enabled: true type: string mongodb_atlas.host.name: description: Hostname of the process enabled: true type: string - mongodb_atlas.user.alias: - description: User-friendly hostname of the cluster node - enabled: false - type: string - mongodb_atlas.cluster.name: - description: Cluster Name - enabled: false - type: string - mongodb_atlas.region.name: - description: Region Name - enabled: false + mongodb_atlas.org_name: + description: Organization Name + enabled: true type: string - mongodb_atlas.provider.name: - description: Provider Name - enabled: false + mongodb_atlas.process.id: + description: ID of the process + enabled: true type: string mongodb_atlas.process.port: description: Port process is bound to @@ -50,32 +42,28 @@ resource_attributes: description: Process type enabled: true type: string - mongodb_atlas.process.id: - description: ID of the process + mongodb_atlas.project.id: + description: Project ID enabled: true type: string - mongodb_atlas.db.name: - description: Name of the Database + mongodb_atlas.project.name: + description: Project Name enabled: true type: string - mongodb_atlas.disk.partition: - description: Name of a disk partition - enabled: true + mongodb_atlas.provider.name: + description: Provider Name + enabled: false + type: string + mongodb_atlas.region.name: + description: Region Name + enabled: false + type: string + mongodb_atlas.user.alias: + description: User-friendly hostname of the cluster node + enabled: false type: string attributes: - cpu_state: - description: CPU state - type: string - enum: - - kernel - - user - - nice - - iowait - - irq - - softirq - - guest - - steal assert_type: description: MongoDB assertion type type: string @@ -84,6 +72,13 @@ attributes: - warning - msg - user + btree_counter_type: + description: Database index effectiveness + type: string + enum: + - accesses + - hits + - misses cache_direction: description: Whether read into or written from type: string @@ -102,82 +97,49 @@ attributes: enum: - dirty - used - ticket_type: - description: Type of ticket available + cluster_role: + description: Whether process is acting as replica or primary type: string enum: - - available_reads - - available_writes + - primary + - replica + cpu_state: + description: CPU state + type: string + enum: + - kernel + - user + - nice + - iowait + - irq + - softirq + - guest + - steal cursor_state: description: Whether cursor is open or timed out type: string enum: - timed_out - open - memory_issue_type: - description: Type of memory issue encountered - type: string - enum: - - extra_info - - global_accesses_not_in_memory - - exceptions_thrown - global_lock_state: - description: Which queue is locked - type: string - enum: - - current_queue_total - - current_queue_readers - - current_queue_writers - btree_counter_type: - description: Database index effectiveness - type: string - enum: - - accesses - - hits - - misses - memory_state: - description: Memory usage type - type: string - enum: - - resident - - virtual - - mapped - - computed - - shared - - free - - used direction: description: Network traffic direction type: string enum: - receive - transmit - storage_status: - description: Views on database size + disk_direction: + description: Measurement type for disk operation type: string enum: + - read + - write - total - - data_size - - index_size - - data_size_wo_system - operation: - description: Type of database operation - type: string - enum: - - cmd - - query - - update - - delete - - getmore - - insert - - scan_and_order - - ttl_deleted - cluster_role: - description: Whether process is acting as replica or primary + disk_status: + description: Disk measurement type type: string enum: - - primary - - replica + - free + - used document_status: description: Status of documents in the database type: string @@ -193,23 +155,29 @@ attributes: - reads - writes - commands - scanned_type: - description: Objects or indexes scanned during query + global_lock_state: + description: Which queue is locked type: string enum: - - index_items - - objects - disk_direction: - description: Measurement type for disk operation + - current_queue_total + - current_queue_readers + - current_queue_writers + memory_issue_type: + description: Type of memory issue encountered type: string enum: - - read - - write - - total - disk_status: - description: Disk measurement type + - extra_info + - global_accesses_not_in_memory + - exceptions_thrown + memory_state: + description: Memory usage type type: string enum: + - resident + - virtual + - mapped + - computed + - shared - free - used memory_status: @@ -233,6 +201,18 @@ attributes: - view - storage - data + operation: + description: Type of database operation + type: string + enum: + - cmd + - query + - update + - delete + - getmore + - insert + - scan_and_order + - ttl_deleted oplog_type: description: Oplog type type: string @@ -240,42 +220,191 @@ attributes: - slave_lag_master_time - master_time - master_lag_time_diff + scanned_type: + description: Objects or indexes scanned during query + type: string + enum: + - index_items + - objects + storage_status: + description: Views on database size + type: string + enum: + - total + - data_size + - index_size + - data_size_wo_system + ticket_type: + description: Type of ticket available + type: string + enum: + - available_reads + - available_writes metrics: - mongodbatlas.process.asserts: - enabled: true - description: Number of assertions per second - extended_documentation: Aggregate of MongoDB Metrics ASSERT_REGULAR, ASSERT_USER, ASSERT_MSG, ASSERT_WARNING - unit: "{assertions}/s" - attributes: [assert_type] - gauge: - value_type: double - mongodbatlas.process.background_flush: + mongodbatlas.db.counts: enabled: true - description: Amount of data flushed in the background - extended_documentation: MongoDB Metric BACKGROUND_FLUSH_AVG - unit: "1" + stability: development + description: Database feature size + extended_documentation: Aggregate of MongoDB Metrics DATABASE_EXTENT_COUNT, DATABASE_VIEW_COUNT, DATABASE_COLLECTION_COUNT, DATABASE_OBJECT_COUNT, DATABASE_INDEX_COUNT + unit: "{objects}" + attributes: [object_type] gauge: value_type: double - mongodbatlas.process.cache.io: + mongodbatlas.db.size: enabled: true - description: Cache throughput (per second) - extended_documentation: Aggregate of MongoDB Metrics CACHE_BYTES_READ_INTO, CACHE_BYTES_WRITTEN_FROM + stability: development + description: Database feature size + extended_documentation: Aggregate of MongoDB Metrics DATABASE_DATA_SIZE, DATABASE_STORAGE_SIZE, DATABASE_INDEX_SIZE, DATABASE_AVERAGE_OBJECT_SIZE unit: By - attributes: [cache_direction] + attributes: [object_type] gauge: value_type: double - mongodbatlas.process.cache.ratio: - enabled: false - description: Cache ratios represented as (%) - extended_documentation: Aggregate of MongoDB Metrics CACHE_FILL_RATIO, DIRTY_FILL_RATIO - unit: "%" - attributes: [cache_ratio_type] + mongodbatlas.disk.partition.iops.average: + enabled: true + stability: development + description: Disk partition iops + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_IOPS_READ, DISK_PARTITION_IOPS_WRITE, DISK_PARTITION_IOPS_TOTAL + unit: "{ops}/s" + attributes: [disk_direction] gauge: value_type: double - mongodbatlas.process.cache.size: + mongodbatlas.disk.partition.iops.max: enabled: true - description: Cache sizes + stability: development + description: Disk partition iops + extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_IOPS_WRITE, MAX_DISK_PARTITION_IOPS_TOTAL, MAX_DISK_PARTITION_IOPS_READ + unit: "{ops}/s" + attributes: [disk_direction] + gauge: + value_type: double + mongodbatlas.disk.partition.latency.average: + enabled: true + stability: development + description: Disk partition latency + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_LATENCY_WRITE, DISK_PARTITION_LATENCY_READ + unit: ms + attributes: [disk_direction] + gauge: + value_type: double + mongodbatlas.disk.partition.latency.max: + enabled: true + stability: development + description: Disk partition latency + extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_LATENCY_WRITE, MAX_DISK_PARTITION_LATENCY_READ + unit: ms + attributes: [disk_direction] + gauge: + value_type: double + mongodbatlas.disk.partition.queue.depth: + enabled: false + stability: development + description: Disk queue depth + extended_documentation: Aggregate of MongoDB Metrics DISK_QUEUE_DEPTH + unit: "1" + attributes: [] + gauge: + value_type: double + mongodbatlas.disk.partition.space.average: + enabled: true + stability: development + description: Disk partition space + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_FREE, DISK_PARTITION_SPACE_USED + unit: By + attributes: [disk_status] + gauge: + value_type: double + mongodbatlas.disk.partition.space.max: + enabled: true + stability: development + description: Disk partition space + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_FREE, DISK_PARTITION_SPACE_USED + unit: By + attributes: [disk_status] + gauge: + value_type: double + mongodbatlas.disk.partition.throughput: + enabled: false + stability: development + description: Disk throughput + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_THROUGHPUT_READ, DISK_PARTITION_THROUGHPUT_WRITE + unit: By/s + attributes: [disk_direction] + gauge: + value_type: double + mongodbatlas.disk.partition.usage.average: + enabled: true + stability: development + description: Disk partition usage (%) + extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_PERCENT_FREE, DISK_PARTITION_SPACE_PERCENT_USED + unit: "1" + attributes: [disk_status] + gauge: + value_type: double + mongodbatlas.disk.partition.usage.max: + enabled: true + stability: development + description: Disk partition usage (%) + extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_SPACE_PERCENT_USED, MAX_DISK_PARTITION_SPACE_PERCENT_FREE + unit: "1" + attributes: [disk_status] + gauge: + value_type: double + mongodbatlas.disk.partition.utilization.average: + enabled: true + stability: development + description: The percentage of time during which requests are being issued to and serviced by the partition. + extended_documentation: MongoDB Metrics DISK_PARTITION_UTILIZATION + unit: "1" + gauge: + value_type: double + mongodbatlas.disk.partition.utilization.max: + enabled: true + stability: development + description: The maximum percentage of time during which requests are being issued to and serviced by the partition. + extended_documentation: MongoDB Metrics MAX_DISK_PARTITION_UTILIZATION + unit: "1" + gauge: + value_type: double + mongodbatlas.process.asserts: + enabled: true + stability: development + description: Number of assertions per second + extended_documentation: Aggregate of MongoDB Metrics ASSERT_REGULAR, ASSERT_USER, ASSERT_MSG, ASSERT_WARNING + unit: "{assertions}/s" + attributes: [assert_type] + gauge: + value_type: double + mongodbatlas.process.background_flush: + enabled: true + stability: development + description: Amount of data flushed in the background + extended_documentation: MongoDB Metric BACKGROUND_FLUSH_AVG + unit: "1" + gauge: + value_type: double + mongodbatlas.process.cache.io: + enabled: true + stability: development + description: Cache throughput (per second) + extended_documentation: Aggregate of MongoDB Metrics CACHE_BYTES_READ_INTO, CACHE_BYTES_WRITTEN_FROM + unit: By + attributes: [cache_direction] + gauge: + value_type: double + mongodbatlas.process.cache.ratio: + enabled: false + stability: development + description: Cache ratios represented as (%) + extended_documentation: Aggregate of MongoDB Metrics CACHE_FILL_RATIO, DIRTY_FILL_RATIO + unit: "%" + attributes: [cache_ratio_type] + gauge: + value_type: double + mongodbatlas.process.cache.size: + enabled: true + stability: development + description: Cache sizes extended_documentation: Aggregate of MongoDB Metrics CACHE_USED_BYTES, CACHE_DIRTY_BYTES unit: By attributes: [cache_status] @@ -285,6 +414,7 @@ metrics: aggregation_temporality: cumulative mongodbatlas.process.connections: enabled: true + stability: development description: Number of current connections extended_documentation: MongoDB Metric CONNECTIONS unit: "{connections}" @@ -292,96 +422,146 @@ metrics: value_type: double monotonic: false aggregation_temporality: cumulative - mongodbatlas.process.cpu.usage.max: + mongodbatlas.process.cpu.children.normalized.usage.average: enabled: true - description: CPU Usage (%) - extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_CPU_KERNEL, MAX_PROCESS_CPU_USER + stability: development + description: CPU Usage for child processes, normalized to pct + extended_documentation: Aggregate of MongoDB Metrics PROCESS_NORMALIZED_CPU_CHILDREN_KERNEL, PROCESS_NORMALIZED_CPU_CHILDREN_USER unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.usage.average: + mongodbatlas.process.cpu.children.normalized.usage.max: enabled: true - description: CPU Usage (%) - extended_documentation: Aggregate of MongoDB Metrics PROCESS_CPU_KERNEL, PROCESS_CPU_USER + stability: development + description: CPU Usage for child processes, normalized to pct + extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_NORMALIZED_CPU_CHILDREN_KERNEL, MAX_PROCESS_NORMALIZED_CPU_CHILDREN_USER unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.children.usage.max: + mongodbatlas.process.cpu.children.usage.average: enabled: true + stability: development description: CPU Usage for child processes (%) - extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_CPU_CHILDREN_USER, MAX_PROCESS_CPU_CHILDREN_KERNEL + extended_documentation: Aggregate of MongoDB Metrics PROCESS_CPU_CHILDREN_KERNEL, PROCESS_CPU_CHILDREN_USER unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.children.usage.average: + mongodbatlas.process.cpu.children.usage.max: enabled: true + stability: development description: CPU Usage for child processes (%) - extended_documentation: Aggregate of MongoDB Metrics PROCESS_CPU_CHILDREN_KERNEL, PROCESS_CPU_CHILDREN_USER + extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_CPU_CHILDREN_USER, MAX_PROCESS_CPU_CHILDREN_KERNEL unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.children.normalized.usage.max: + mongodbatlas.process.cpu.normalized.usage.average: enabled: true - description: CPU Usage for child processes, normalized to pct - extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_NORMALIZED_CPU_CHILDREN_KERNEL, MAX_PROCESS_NORMALIZED_CPU_CHILDREN_USER + stability: development + description: CPU Usage, normalized to pct + extended_documentation: Aggregate of MongoDB Metrics PROCESS_NORMALIZED_CPU_KERNEL, PROCESS_NORMALIZED_CPU_USER unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.children.normalized.usage.average: + mongodbatlas.process.cpu.normalized.usage.max: enabled: true - description: CPU Usage for child processes, normalized to pct - extended_documentation: Aggregate of MongoDB Metrics PROCESS_NORMALIZED_CPU_CHILDREN_KERNEL, PROCESS_NORMALIZED_CPU_CHILDREN_USER + stability: development + description: CPU Usage, normalized to pct + extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_NORMALIZED_CPU_USER, MAX_PROCESS_NORMALIZED_CPU_KERNEL unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.normalized.usage.max: + mongodbatlas.process.cpu.usage.average: enabled: true - description: CPU Usage, normalized to pct - extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_NORMALIZED_CPU_USER, MAX_PROCESS_NORMALIZED_CPU_KERNEL + stability: development + description: CPU Usage (%) + extended_documentation: Aggregate of MongoDB Metrics PROCESS_CPU_KERNEL, PROCESS_CPU_USER unit: "1" attributes: [cpu_state] gauge: value_type: double - mongodbatlas.process.cpu.normalized.usage.average: + mongodbatlas.process.cpu.usage.max: enabled: true - description: CPU Usage, normalized to pct - extended_documentation: Aggregate of MongoDB Metrics PROCESS_NORMALIZED_CPU_KERNEL, PROCESS_NORMALIZED_CPU_USER + stability: development + description: CPU Usage (%) + extended_documentation: Aggregate of MongoDB Metrics MAX_PROCESS_CPU_KERNEL, MAX_PROCESS_CPU_USER unit: "1" attributes: [cpu_state] gauge: value_type: double mongodbatlas.process.cursors: enabled: true + stability: development description: Number of cursors extended_documentation: Aggregate of MongoDB Metrics CURSORS_TOTAL_OPEN, CURSORS_TOTAL_TIMED_OUT unit: "{cursors}" attributes: [cursor_state] gauge: value_type: double - mongodbatlas.process.db.storage: - enabled: true - description: Storage used by the database - extended_documentation: Aggregate of MongoDB Metrics DB_INDEX_SIZE_TOTAL, DB_DATA_SIZE_TOTAL_WO_SYSTEM, DB_STORAGE_TOTAL, DB_DATA_SIZE_TOTAL - unit: By - attributes: [storage_status] - gauge: - value_type: double mongodbatlas.process.db.document.rate: enabled: true + stability: development description: Document access rates extended_documentation: Aggregate of MongoDB Metrics DOCUMENT_METRICS_UPDATED, DOCUMENT_METRICS_DELETED, DOCUMENT_METRICS_RETURNED, DOCUMENT_METRICS_INSERTED unit: "{documents}/s" attributes: [document_status] gauge: value_type: double + mongodbatlas.process.db.operations.rate: + enabled: true + stability: development + description: DB Operation Rates + extended_documentation: Aggregate of MongoDB Metrics OPCOUNTER_GETMORE, OPERATIONS_SCAN_AND_ORDER, OPCOUNTER_UPDATE, OPCOUNTER_REPL_UPDATE, OPCOUNTER_CMD, OPCOUNTER_DELETE, OPCOUNTER_REPL_DELETE, OPCOUNTER_REPL_CMD, OPCOUNTER_QUERY, OPCOUNTER_REPL_INSERT, OPCOUNTER_INSERT, OPCOUNTER_TTL_DELETED + unit: "{operations}/s" + attributes: [operation, cluster_role] + gauge: + value_type: double + mongodbatlas.process.db.operations.time: + enabled: true + stability: development + description: DB Operation Times + extended_documentation: Aggregate of MongoDB Metrics OP_EXECUTION_TIME_WRITES, OP_EXECUTION_TIME_COMMANDS, OP_EXECUTION_TIME_READS + unit: ms + attributes: [execution_type] + sum: + value_type: double + monotonic: true + aggregation_temporality: cumulative + mongodbatlas.process.db.query_executor.scanned: + enabled: true + stability: development + description: Scanned objects + extended_documentation: Aggregate of MongoDB Metrics QUERY_EXECUTOR_SCANNED_OBJECTS, QUERY_EXECUTOR_SCANNED + attributes: [scanned_type] + unit: "{objects}/s" + gauge: + value_type: double + mongodbatlas.process.db.query_targeting.scanned_per_returned: + enabled: true + stability: development + description: Scanned objects per returned + extended_documentation: Aggregate of MongoDB Metrics QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED, QUERY_TARGETING_SCANNED_PER_RETURNED + unit: "{scanned}/{returned}" + attributes: [scanned_type] + gauge: + value_type: double + mongodbatlas.process.db.storage: + enabled: true + stability: development + description: Storage used by the database + extended_documentation: Aggregate of MongoDB Metrics DB_INDEX_SIZE_TOTAL, DB_DATA_SIZE_TOTAL_WO_SYSTEM, DB_STORAGE_TOTAL, DB_DATA_SIZE_TOTAL + unit: By + attributes: [storage_status] + gauge: + value_type: double mongodbatlas.process.global_lock: enabled: true + stability: development description: Number and status of locks extended_documentation: Aggregate of MongoDB Metrics GLOBAL_LOCK_CURRENT_QUEUE_WRITERS, GLOBAL_LOCK_CURRENT_QUEUE_READERS, GLOBAL_LOCK_CURRENT_QUEUE_TOTAL unit: "{locks}" @@ -390,6 +570,7 @@ metrics: value_type: double mongodbatlas.process.index.btree_miss_ratio: enabled: true + stability: development description: Index miss ratio (%) extended_documentation: MongoDB Metric INDEX_COUNTERS_BTREE_MISS_RATIO unit: "1" @@ -397,6 +578,7 @@ metrics: value_type: double mongodbatlas.process.index.counters: enabled: true + stability: development description: Indexes extended_documentation: Aggregate of MongoDB Metrics INDEX_COUNTERS_BTREE_MISSES, INDEX_COUNTERS_BTREE_ACCESSES, INDEX_COUNTERS_BTREE_HITS unit: "{indexes}" @@ -405,6 +587,7 @@ metrics: value_type: double mongodbatlas.process.journaling.commits: enabled: true + stability: development description: Journaling commits extended_documentation: MongoDB Metric JOURNALING_COMMITS_IN_WRITE_LOCK unit: "{commits}" @@ -412,6 +595,7 @@ metrics: value_type: double mongodbatlas.process.journaling.data_files: enabled: true + stability: development description: Data file sizes extended_documentation: MongoDB Metric JOURNALING_WRITE_DATA_FILES_MB unit: MiBy @@ -419,6 +603,7 @@ metrics: value_type: double mongodbatlas.process.journaling.written: enabled: true + stability: development description: Journals written extended_documentation: MongoDB Metric JOURNALING_MB unit: MiBy @@ -426,6 +611,7 @@ metrics: value_type: double mongodbatlas.process.memory.usage: enabled: true + stability: development description: Memory Usage extended_documentation: Aggregate of MongoDB Metrics MEMORY_MAPPED, MEMORY_VIRTUAL, COMPUTED_MEMORY, MEMORY_RESIDENT unit: By @@ -434,6 +620,7 @@ metrics: value_type: double mongodbatlas.process.network.io: enabled: true + stability: development description: Network IO extended_documentation: Aggregate of MongoDB Metrics NETWORK_BYTES_OUT, NETWORK_BYTES_IN unit: By/s @@ -442,6 +629,7 @@ metrics: value_type: double mongodbatlas.process.network.requests: enabled: true + stability: development description: Network requests extended_documentation: MongoDB Metric NETWORK_NUM_REQUESTS unit: "{requests}" @@ -449,315 +637,192 @@ metrics: value_type: double monotonic: true aggregation_temporality: cumulative - mongodbatlas.process.oplog.time: - enabled: true - description: Execution time by operation - extended_documentation: Aggregate of MongoDB Metrics OPLOG_MASTER_TIME, OPLOG_SLAVE_LAG_MASTER_TIME, OPLOG_MASTER_LAG_TIME_DIFF - unit: s - attributes: [oplog_type] - gauge: - value_type: double mongodbatlas.process.oplog.rate: enabled: true + stability: development description: Execution rate by operation extended_documentation: MongoDB Metric OPLOG_RATE_GB_PER_HOUR unit: GiBy/h gauge: value_type: double - mongodbatlas.process.db.operations.rate: + mongodbatlas.process.oplog.time: enabled: true - description: DB Operation Rates - extended_documentation: Aggregate of MongoDB Metrics OPCOUNTER_GETMORE, OPERATIONS_SCAN_AND_ORDER, OPCOUNTER_UPDATE, OPCOUNTER_REPL_UPDATE, OPCOUNTER_CMD, OPCOUNTER_DELETE, OPCOUNTER_REPL_DELETE, OPCOUNTER_REPL_CMD, OPCOUNTER_QUERY, OPCOUNTER_REPL_INSERT, OPCOUNTER_INSERT, OPCOUNTER_TTL_DELETED - unit: "{operations}/s" - attributes: [operation, cluster_role] + stability: development + description: Execution time by operation + extended_documentation: Aggregate of MongoDB Metrics OPLOG_MASTER_TIME, OPLOG_SLAVE_LAG_MASTER_TIME, OPLOG_MASTER_LAG_TIME_DIFF + unit: s + attributes: [oplog_type] gauge: value_type: double - mongodbatlas.process.db.operations.time: - enabled: true - description: DB Operation Times - extended_documentation: Aggregate of MongoDB Metrics OP_EXECUTION_TIME_WRITES, OP_EXECUTION_TIME_COMMANDS, OP_EXECUTION_TIME_READS - unit: ms - attributes: [execution_type] - sum: - value_type: double - monotonic: true - aggregation_temporality: cumulative mongodbatlas.process.page_faults: enabled: true + stability: development description: Page faults extended_documentation: Aggregate of MongoDB Metrics GLOBAL_PAGE_FAULT_EXCEPTIONS_THROWN, EXTRA_INFO_PAGE_FAULTS, GLOBAL_ACCESSES_NOT_IN_MEMORY unit: "{faults}/s" attributes: [memory_issue_type] gauge: value_type: double - mongodbatlas.process.db.query_executor.scanned: - enabled: true - description: Scanned objects - extended_documentation: Aggregate of MongoDB Metrics QUERY_EXECUTOR_SCANNED_OBJECTS, QUERY_EXECUTOR_SCANNED - attributes: [scanned_type] - unit: "{objects}/s" - gauge: - value_type: double - mongodbatlas.process.db.query_targeting.scanned_per_returned: - enabled: true - description: Scanned objects per returned - extended_documentation: Aggregate of MongoDB Metrics QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED, QUERY_TARGETING_SCANNED_PER_RETURNED - unit: "{scanned}/{returned}" - attributes: [scanned_type] - gauge: - value_type: double mongodbatlas.process.restarts: enabled: true + stability: development description: Restarts in last hour extended_documentation: Aggregate of MongoDB Metrics RESTARTS_IN_LAST_HOUR unit: "{restarts}/h" gauge: value_type: double - mongodbatlas.system.paging.usage.max: + mongodbatlas.process.tickets: enabled: true - description: Swap usage - extended_documentation: Aggregate of MongoDB Metrics MAX_SWAP_USAGE_FREE, MAX_SWAP_USAGE_USED - unit: KiBy - attributes: [memory_state] + stability: development + description: Tickets + extended_documentation: Aggregate of MongoDB Metrics TICKETS_AVAILABLE_WRITE, TICKETS_AVAILABLE_READS + unit: "{tickets}" + attributes: [ticket_type] gauge: value_type: double - mongodbatlas.system.paging.usage.average: + mongodbatlas.system.cpu.normalized.usage.average: enabled: true - description: Swap usage - extended_documentation: Aggregate of MongoDB Metrics SWAP_USAGE_FREE, SWAP_USAGE_USED - unit: KiBy - attributes: [memory_state] + stability: development + description: System CPU Normalized to pct + extended_documentation: Aggregate of MongoDB Metrics SYSTEM_NORMALIZED_CPU_IOWAIT, SYSTEM_NORMALIZED_CPU_GUEST, SYSTEM_NORMALIZED_CPU_IRQ, SYSTEM_NORMALIZED_CPU_KERNEL, SYSTEM_NORMALIZED_CPU_STEAL, SYSTEM_NORMALIZED_CPU_SOFTIRQ, SYSTEM_NORMALIZED_CPU_NICE, SYSTEM_NORMALIZED_CPU_USER + attributes: [cpu_state] + unit: "1" gauge: value_type: double - mongodbatlas.system.paging.io.max: + mongodbatlas.system.cpu.normalized.usage.max: enabled: true - description: Swap IO - extended_documentation: Aggregate of MongoDB Metrics MAX_SWAP_IO_IN, MAX_SWAP_IO_OUT - unit: "{pages}/s" - attributes: [direction] + stability: development + description: System CPU Normalized to pct + extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_NORMALIZED_CPU_USER, MAX_SYSTEM_NORMALIZED_CPU_NICE, MAX_SYSTEM_NORMALIZED_CPU_IOWAIT, MAX_SYSTEM_NORMALIZED_CPU_SOFTIRQ, MAX_SYSTEM_NORMALIZED_CPU_STEAL, MAX_SYSTEM_NORMALIZED_CPU_KERNEL, MAX_SYSTEM_NORMALIZED_CPU_GUEST, MAX_SYSTEM_NORMALIZED_CPU_IRQ + attributes: [cpu_state] + unit: "1" gauge: value_type: double - mongodbatlas.system.paging.io.average: + mongodbatlas.system.cpu.usage.average: enabled: true - description: Swap IO - extended_documentation: Aggregate of MongoDB Metrics SWAP_IO_IN, SWAP_IO_OUT - unit: "{pages}/s" - attributes: [direction] + stability: development + description: System CPU Usage (%) + extended_documentation: Aggregate of MongoDB Metrics SYSTEM_CPU_USER, SYSTEM_CPU_GUEST, SYSTEM_CPU_SOFTIRQ, SYSTEM_CPU_IRQ, SYSTEM_CPU_KERNEL, SYSTEM_CPU_IOWAIT, SYSTEM_CPU_NICE, SYSTEM_CPU_STEAL + attributes: [cpu_state] + unit: "1" gauge: value_type: double mongodbatlas.system.cpu.usage.max: enabled: true + stability: development description: System CPU Usage (%) extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_CPU_SOFTIRQ, MAX_SYSTEM_CPU_IRQ, MAX_SYSTEM_CPU_GUEST, MAX_SYSTEM_CPU_IOWAIT, MAX_SYSTEM_CPU_NICE, MAX_SYSTEM_CPU_KERNEL, MAX_SYSTEM_CPU_USER, MAX_SYSTEM_CPU_STEAL attributes: [cpu_state] unit: "1" gauge: value_type: double - mongodbatlas.system.cpu.usage.average: + mongodbatlas.system.fts.cpu.normalized.usage: enabled: true - description: System CPU Usage (%) - extended_documentation: Aggregate of MongoDB Metrics SYSTEM_CPU_USER, SYSTEM_CPU_GUEST, SYSTEM_CPU_SOFTIRQ, SYSTEM_CPU_IRQ, SYSTEM_CPU_KERNEL, SYSTEM_CPU_IOWAIT, SYSTEM_CPU_NICE, SYSTEM_CPU_STEAL + stability: development + description: Full text search disk usage (%) + extended_documentation: Aggregate of MongoDB Metrics FTS_PROCESS_NORMALIZED_CPU_USER, FTS_PROCESS_NORMALIZED_CPU_KERNEL + unit: "1" attributes: [cpu_state] + gauge: + value_type: double + mongodbatlas.system.fts.cpu.usage: + enabled: true + stability: development + description: Full-text search (%) + extended_documentation: Aggregate of MongoDB Metrics FTS_PROCESS_CPU_USER, FTS_PROCESS_CPU_KERNEL unit: "1" + attributes: [cpu_state] gauge: value_type: double - mongodbatlas.system.memory.usage.max: + mongodbatlas.system.fts.disk.used: enabled: true - description: System Memory Usage - extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_MEMORY_CACHED, MAX_SYSTEM_MEMORY_AVAILABLE, MAX_SYSTEM_MEMORY_USED, MAX_SYSTEM_MEMORY_BUFFERS, MAX_SYSTEM_MEMORY_FREE, MAX_SYSTEM_MEMORY_SHARED - unit: KiBy - attributes: [memory_status] + stability: development + description: Full text search disk usage + extended_documentation: MongoDB Metric FTS_DISK_USAGE + unit: By gauge: value_type: double + mongodbatlas.system.fts.memory.usage: + enabled: true + stability: development + description: Full-text search + extended_documentation: Aggregate of MongoDB Metrics FTS_MEMORY_MAPPED, FTS_PROCESS_SHARED_MEMORY, FTS_PROCESS_RESIDENT_MEMORY, FTS_PROCESS_VIRTUAL_MEMORY + unit: MiBy + attributes: [memory_state] + sum: + value_type: double + monotonic: true + aggregation_temporality: cumulative mongodbatlas.system.memory.usage.average: enabled: true + stability: development description: System Memory Usage extended_documentation: Aggregate of MongoDB Metrics SYSTEM_MEMORY_AVAILABLE, SYSTEM_MEMORY_BUFFERS, SYSTEM_MEMORY_USED, SYSTEM_MEMORY_CACHED, SYSTEM_MEMORY_SHARED, SYSTEM_MEMORY_FREE unit: KiBy attributes: [memory_status] gauge: value_type: double - mongodbatlas.system.network.io.max: + mongodbatlas.system.memory.usage.max: enabled: true - description: System Network IO - extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_NETWORK_OUT, MAX_SYSTEM_NETWORK_IN - unit: By/s - attributes: [direction] + stability: development + description: System Memory Usage + extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_MEMORY_CACHED, MAX_SYSTEM_MEMORY_AVAILABLE, MAX_SYSTEM_MEMORY_USED, MAX_SYSTEM_MEMORY_BUFFERS, MAX_SYSTEM_MEMORY_FREE, MAX_SYSTEM_MEMORY_SHARED + unit: KiBy + attributes: [memory_status] gauge: value_type: double mongodbatlas.system.network.io.average: enabled: true + stability: development description: System Network IO extended_documentation: Aggregate of MongoDB Metrics SYSTEM_NETWORK_IN, SYSTEM_NETWORK_OUT unit: By/s attributes: [direction] gauge: value_type: double - mongodbatlas.system.cpu.normalized.usage.max: - enabled: true - description: System CPU Normalized to pct - extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_NORMALIZED_CPU_USER, MAX_SYSTEM_NORMALIZED_CPU_NICE, MAX_SYSTEM_NORMALIZED_CPU_IOWAIT, MAX_SYSTEM_NORMALIZED_CPU_SOFTIRQ, MAX_SYSTEM_NORMALIZED_CPU_STEAL, MAX_SYSTEM_NORMALIZED_CPU_KERNEL, MAX_SYSTEM_NORMALIZED_CPU_GUEST, MAX_SYSTEM_NORMALIZED_CPU_IRQ - attributes: [cpu_state] - unit: "1" - gauge: - value_type: double - mongodbatlas.system.cpu.normalized.usage.average: - enabled: true - description: System CPU Normalized to pct - extended_documentation: Aggregate of MongoDB Metrics SYSTEM_NORMALIZED_CPU_IOWAIT, SYSTEM_NORMALIZED_CPU_GUEST, SYSTEM_NORMALIZED_CPU_IRQ, SYSTEM_NORMALIZED_CPU_KERNEL, SYSTEM_NORMALIZED_CPU_STEAL, SYSTEM_NORMALIZED_CPU_SOFTIRQ, SYSTEM_NORMALIZED_CPU_NICE, SYSTEM_NORMALIZED_CPU_USER - attributes: [cpu_state] - unit: "1" - gauge: - value_type: double - mongodbatlas.process.tickets: - enabled: true - description: Tickets - extended_documentation: Aggregate of MongoDB Metrics TICKETS_AVAILABLE_WRITE, TICKETS_AVAILABLE_READS - unit: "{tickets}" - attributes: [ticket_type] - gauge: - value_type: double - mongodbatlas.disk.partition.iops.max: - enabled: true - description: Disk partition iops - extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_IOPS_WRITE, MAX_DISK_PARTITION_IOPS_TOTAL, MAX_DISK_PARTITION_IOPS_READ - unit: "{ops}/s" - attributes: [disk_direction] - gauge: - value_type: double - mongodbatlas.disk.partition.iops.average: + mongodbatlas.system.network.io.max: enabled: true - description: Disk partition iops - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_IOPS_READ, DISK_PARTITION_IOPS_WRITE, DISK_PARTITION_IOPS_TOTAL - unit: "{ops}/s" - attributes: [disk_direction] - gauge: - value_type: double - mongodbatlas.disk.partition.throughput: - enabled: false - description: Disk throughput - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_THROUGHPUT_READ, DISK_PARTITION_THROUGHPUT_WRITE + stability: development + description: System Network IO + extended_documentation: Aggregate of MongoDB Metrics MAX_SYSTEM_NETWORK_OUT, MAX_SYSTEM_NETWORK_IN unit: By/s - attributes: [disk_direction] - gauge: - value_type: double - mongodbatlas.disk.partition.usage.max: - enabled: true - description: Disk partition usage (%) - extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_SPACE_PERCENT_USED, MAX_DISK_PARTITION_SPACE_PERCENT_FREE - unit: "1" - attributes: [disk_status] - gauge: - value_type: double - mongodbatlas.disk.partition.usage.average: - enabled: true - description: Disk partition usage (%) - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_PERCENT_FREE, DISK_PARTITION_SPACE_PERCENT_USED - unit: "1" - attributes: [disk_status] - gauge: - value_type: double - mongodbatlas.disk.partition.utilization.max: - enabled: true - description: The maximum percentage of time during which requests are being issued to and serviced by the partition. - extended_documentation: MongoDB Metrics MAX_DISK_PARTITION_UTILIZATION - unit: "1" - gauge: - value_type: double - mongodbatlas.disk.partition.utilization.average: - enabled: true - description: The percentage of time during which requests are being issued to and serviced by the partition. - extended_documentation: MongoDB Metrics DISK_PARTITION_UTILIZATION - unit: "1" - gauge: - value_type: double - mongodbatlas.disk.partition.latency.max: - enabled: true - description: Disk partition latency - extended_documentation: Aggregate of MongoDB Metrics MAX_DISK_PARTITION_LATENCY_WRITE, MAX_DISK_PARTITION_LATENCY_READ - unit: ms - attributes: [disk_direction] - gauge: - value_type: double - mongodbatlas.disk.partition.latency.average: - enabled: true - description: Disk partition latency - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_LATENCY_WRITE, DISK_PARTITION_LATENCY_READ - unit: ms - attributes: [disk_direction] - gauge: - value_type: double - mongodbatlas.disk.partition.space.max: - enabled: true - description: Disk partition space - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_FREE, DISK_PARTITION_SPACE_USED - unit: By - attributes: [disk_status] - gauge: - value_type: double - mongodbatlas.disk.partition.space.average: - enabled: true - description: Disk partition space - extended_documentation: Aggregate of MongoDB Metrics DISK_PARTITION_SPACE_FREE, DISK_PARTITION_SPACE_USED - unit: By - attributes: [disk_status] - gauge: - value_type: double - mongodbatlas.disk.partition.queue.depth: - enabled: false - description: Disk queue depth - extended_documentation: Aggregate of MongoDB Metrics DISK_QUEUE_DEPTH - unit: "1" - attributes: [] + attributes: [direction] gauge: value_type: double - mongodbatlas.db.size: + mongodbatlas.system.paging.io.average: enabled: true - description: Database feature size - extended_documentation: Aggregate of MongoDB Metrics DATABASE_DATA_SIZE, DATABASE_STORAGE_SIZE, DATABASE_INDEX_SIZE, DATABASE_AVERAGE_OBJECT_SIZE - unit: By - attributes: [object_type] + stability: development + description: Swap IO + extended_documentation: Aggregate of MongoDB Metrics SWAP_IO_IN, SWAP_IO_OUT + unit: "{pages}/s" + attributes: [direction] gauge: value_type: double - mongodbatlas.db.counts: + mongodbatlas.system.paging.io.max: enabled: true - description: Database feature size - extended_documentation: Aggregate of MongoDB Metrics DATABASE_EXTENT_COUNT, DATABASE_VIEW_COUNT, DATABASE_COLLECTION_COUNT, DATABASE_OBJECT_COUNT, DATABASE_INDEX_COUNT - unit: "{objects}" - attributes: [object_type] + stability: development + description: Swap IO + extended_documentation: Aggregate of MongoDB Metrics MAX_SWAP_IO_IN, MAX_SWAP_IO_OUT + unit: "{pages}/s" + attributes: [direction] gauge: value_type: double - mongodbatlas.system.fts.memory.usage: + mongodbatlas.system.paging.usage.average: enabled: true - description: Full-text search - extended_documentation: Aggregate of MongoDB Metrics FTS_MEMORY_MAPPED, FTS_PROCESS_SHARED_MEMORY, FTS_PROCESS_RESIDENT_MEMORY, FTS_PROCESS_VIRTUAL_MEMORY - unit: MiBy + stability: development + description: Swap usage + extended_documentation: Aggregate of MongoDB Metrics SWAP_USAGE_FREE, SWAP_USAGE_USED + unit: KiBy attributes: [memory_state] - sum: - value_type: double - monotonic: true - aggregation_temporality: cumulative - mongodbatlas.system.fts.disk.used: - enabled: true - description: Full text search disk usage - extended_documentation: MongoDB Metric FTS_DISK_USAGE - unit: By - gauge: - value_type: double - mongodbatlas.system.fts.cpu.usage: - enabled: true - description: Full-text search (%) - extended_documentation: Aggregate of MongoDB Metrics FTS_PROCESS_CPU_USER, FTS_PROCESS_CPU_KERNEL - unit: "1" - attributes: [cpu_state] gauge: value_type: double - mongodbatlas.system.fts.cpu.normalized.usage: + mongodbatlas.system.paging.usage.max: enabled: true - description: Full text search disk usage (%) - extended_documentation: Aggregate of MongoDB Metrics FTS_PROCESS_NORMALIZED_CPU_USER, FTS_PROCESS_NORMALIZED_CPU_KERNEL - unit: "1" - attributes: [cpu_state] + stability: development + description: Swap usage + extended_documentation: Aggregate of MongoDB Metrics MAX_SWAP_USAGE_FREE, MAX_SWAP_USAGE_USED + unit: KiBy + attributes: [memory_state] gauge: value_type: double diff --git a/metric-metadata/mongodbreceiver.yaml b/metric-metadata/mongodbreceiver.yaml index fec92c3..758e51b 100644 --- a/metric-metadata/mongodbreceiver.yaml +++ b/metric-metadata/mongodbreceiver.yaml @@ -6,10 +6,15 @@ status: beta: [metrics] distributions: [contrib] codeowners: - active: [justinianvoss22] + active: [justinianvoss22, dyl10s, ishleenk17] seeking_new: true resource_attributes: + database: + description: The name of a database. + enabled: true + type: string + server.address: description: The address of the MongoDB host. enabled: true @@ -18,15 +23,40 @@ resource_attributes: description: The port of the MongoDB host. enabled: false type: int - database: - description: The name of a database. - enabled: true - type: string attributes: collection: description: The name of a collection. type: string + connection_type: + name_override: type + description: The status of the connection. + type: string + enum: + - active + - available + - current + lock_mode: + description: The mode of Lock which denotes the degree of access + type: string + enum: + - shared + - exclusive + - intent_shared + - intent_exclusive + + lock_type: + description: The Resource over which the Lock controls access + type: string + enum: + - parallel_batch_write_mode + - replication_state_transition + - global + - database + - collection + - mutex + - metadata + - oplog memory_type: name_override: type description: The type of memory used. @@ -52,44 +82,37 @@ attributes: - read - write - command - connection_type: - name_override: type - description: The status of the connection. - type: string - enum: - - active - - available - - current type: description: The result of a cache request. type: string enum: - hit - miss - lock_type: - description: The Resource over which the Lock controls access - type: string - enum: - - parallel_batch_write_mode - - replication_state_transition - - global - - database - - collection - - mutex - - metadata - - oplog - lock_mode: - description: The mode of Lock which denotes the degree of access - type: string - enum: - - shared - - exclusive - - intent_shared - - intent_exclusive metrics: + mongodb.active.reads: + description: The number of read operations currently being processed. + stability: development + unit: "{reads}" + enabled: false + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [] + mongodb.active.writes: + description: The number of write operations currently being processed. + stability: development + unit: "{writes}" + enabled: false + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [] mongodb.cache.operations: description: The number of cache operations of the instance. + stability: development unit: "{operations}" enabled: true sum: @@ -99,6 +122,7 @@ metrics: attributes: [type] mongodb.collection.count: description: The number of collections. + stability: development unit: "{collections}" enabled: true sum: @@ -106,8 +130,48 @@ metrics: value_type: int monotonic: false attributes: [] + mongodb.commands.rate: + description: The number of commands executed per second. + stability: development + unit: "{command}/s" + enabled: false + gauge: + value_type: double + aggregation_temporality: delta + monotonic: false + mongodb.connection.count: + description: The number of connections. + stability: development + unit: "{connections}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [connection_type] + mongodb.cursor.count: + description: The number of open cursors maintained for clients. + stability: development + unit: "{cursors}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [] + mongodb.cursor.timeout.count: + description: The number of cursors that have timed out. + stability: development + unit: "{cursors}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [] mongodb.data.size: description: The size of the collection. Data compression does not affect this value. + stability: development unit: By enabled: true sum: @@ -115,17 +179,38 @@ metrics: value_type: int monotonic: false attributes: [] - mongodb.connection.count: - description: The number of connections. - unit: "{connections}" + mongodb.database.count: + description: The number of existing databases. + stability: development + unit: "{databases}" enabled: true sum: value_type: int aggregation_temporality: cumulative monotonic: false - attributes: [connection_type] + attributes: [] + mongodb.deletes.rate: + description: The number of deletes executed per second. + stability: development + unit: "{delete}/s" + enabled: false + gauge: + value_type: double + aggregation_temporality: delta + monotonic: false + mongodb.document.operation.count: + description: The number of document operations executed. + stability: development + unit: "{documents}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [operation] mongodb.extent.count: description: The number of extents. + stability: development unit: "{extents}" enabled: true sum: @@ -133,8 +218,27 @@ metrics: value_type: int monotonic: false attributes: [] + mongodb.flushes.rate: + description: The number of flushes executed per second. + stability: development + unit: "{flush}/s" + enabled: false + gauge: + value_type: double + aggregation_temporality: delta + monotonic: false + mongodb.getmores.rate: + description: The number of getmores executed per second. + stability: development + unit: "{getmore}/s" + enabled: false + gauge: + value_type: double + aggregation_temporality: delta + monotonic: false mongodb.global_lock.time: description: The time the global lock has been held. + stability: development unit: ms enabled: true sum: @@ -142,8 +246,28 @@ metrics: value_type: int monotonic: true attributes: [] + mongodb.health: + enabled: false + description: The health status of the server. + extended_documentation: A value of '1' indicates healthy. A value of '0' indicates unhealthy. + stability: development + unit: "1" + gauge: + value_type: int + attributes: [] + mongodb.index.access.count: + description: The number of times an index has been accessed. + stability: development + unit: "{accesses}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + attributes: [collection] mongodb.index.count: description: The number of indexes. + stability: development unit: "{indexes}" enabled: true sum: @@ -153,6 +277,7 @@ metrics: attributes: [] mongodb.index.size: description: Sum of the space allocated to all indexes in the database, including free index space. + stability: development unit: By enabled: true sum: @@ -160,88 +285,68 @@ metrics: value_type: int monotonic: false attributes: [] - mongodb.memory.usage: - description: The amount of memory used. - unit: By - enabled: true - sum: - aggregation_temporality: cumulative - value_type: int - monotonic: false - attributes: [memory_type] - mongodb.object.count: - description: The number of objects. - unit: "{objects}" - enabled: true - sum: - aggregation_temporality: cumulative - value_type: int - monotonic: false - attributes: [] - mongodb.operation.latency.time: - description: The latency of operations. - unit: us + mongodb.inserts.rate: + description: The number of insertions executed per second. + stability: development + unit: "{insert}/s" enabled: false gauge: - value_type: int - attributes: [operation_latency] - mongodb.operation.count: - description: The number of operations executed. - unit: "{operations}" - enabled: true + value_type: double + aggregation_temporality: delta + monotonic: false + mongodb.lock.acquire.count: + description: Number of times the lock was acquired in the specified mode. + stability: development + unit: "{count}" + enabled: false sum: - aggregation_temporality: cumulative value_type: int + aggregation_temporality: cumulative monotonic: true - attributes: [operation] - mongodb.operation.repl.count: - description: The number of replicated operations executed. - unit: "{operations}" + attributes: [lock_type, lock_mode] + mongodb.lock.acquire.time: + description: Cumulative wait time for the lock acquisitions. + stability: development + unit: "microseconds" enabled: false sum: - aggregation_temporality: cumulative value_type: int - monotonic: true - attributes: [operation] - mongodb.storage.size: - description: The total amount of storage allocated to this collection. - extended_documentation: If collection data is compressed it reflects the compressed size. - unit: By - enabled: true - sum: aggregation_temporality: cumulative - value_type: int monotonic: true - attributes: [] - mongodb.database.count: - description: The number of existing databases. - unit: "{databases}" - enabled: true + attributes: [lock_type, lock_mode] + mongodb.lock.acquire.wait_count: + description: Number of times the lock acquisitions encountered waits because the locks were held in a conflicting mode. + stability: development + unit: "{count}" + enabled: false sum: value_type: int aggregation_temporality: cumulative - monotonic: false - attributes: [] - mongodb.index.access.count: - description: The number of times an index has been accessed. - unit: "{accesses}" - enabled: true + monotonic: true + attributes: [lock_type, lock_mode] + mongodb.lock.deadlock.count: + description: Number of times the lock acquisitions encountered deadlocks. + stability: development + unit: "{count}" + enabled: false sum: value_type: int aggregation_temporality: cumulative - monotonic: false - attributes: [collection] - mongodb.document.operation.count: - description: The number of document operations executed. - unit: "{documents}" + monotonic: true + attributes: [lock_type, lock_mode] + mongodb.memory.usage: + description: The amount of memory used. + stability: development + unit: By enabled: true sum: - value_type: int aggregation_temporality: cumulative + value_type: int monotonic: false - attributes: [operation] + attributes: [memory_type] mongodb.network.io.receive: description: The number of bytes received. + stability: development unit: By enabled: true sum: @@ -251,6 +356,7 @@ metrics: attributes: [] mongodb.network.io.transmit: description: The number of by transmitted. + stability: development unit: By enabled: true sum: @@ -260,6 +366,7 @@ metrics: attributes: [] mongodb.network.request.count: description: The number of requests received by the server. + stability: development unit: "{requests}" enabled: true sum: @@ -267,220 +374,170 @@ metrics: aggregation_temporality: cumulative monotonic: false attributes: [] - mongodb.operation.time: - description: The total time spent performing operations. - unit: ms + mongodb.object.count: + description: The number of objects. + stability: development + unit: "{objects}" enabled: true sum: - value_type: int aggregation_temporality: cumulative - monotonic: true - attributes: [operation] - mongodb.session.count: - description: The total number of active sessions. - unit: "{sessions}" - enabled: true - sum: value_type: int - aggregation_temporality: cumulative monotonic: false attributes: [] - mongodb.cursor.count: - description: The number of open cursors maintained for clients. - unit: "{cursors}" - enabled: true - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - attributes: [] - mongodb.cursor.timeout.count: - description: The number of cursors that have timed out. - unit: "{cursors}" + mongodb.operation.count: + description: The number of operations executed. + stability: development + unit: "{operations}" enabled: true sum: - value_type: int aggregation_temporality: cumulative - monotonic: false - attributes: [] - mongodb.lock.acquire.count: - description: Number of times the lock was acquired in the specified mode. - unit: "{count}" - enabled: false - sum: value_type: int - aggregation_temporality: cumulative monotonic: true - attributes: [lock_type, lock_mode] - mongodb.lock.acquire.wait_count: - description: Number of times the lock acquisitions encountered waits because the locks were held in a conflicting mode. - unit: "{count}" + attributes: [operation] + mongodb.operation.latency.time: + description: The latency of operations. + stability: development + unit: us enabled: false - sum: + gauge: value_type: int - aggregation_temporality: cumulative - monotonic: true - attributes: [lock_type, lock_mode] - mongodb.lock.acquire.time: - description: Cumulative wait time for the lock acquisitions. - unit: "microseconds" + attributes: [operation_latency] + mongodb.operation.repl.count: + description: The number of replicated operations executed. + stability: development + unit: "{operations}" enabled: false sum: - value_type: int aggregation_temporality: cumulative + value_type: int monotonic: true - attributes: [lock_type, lock_mode] - mongodb.lock.deadlock.count: - description: Number of times the lock acquisitions encountered deadlocks. - unit: "{count}" - enabled: false + attributes: [operation] + mongodb.operation.time: + description: The total time spent performing operations. + stability: development + unit: ms + enabled: true sum: value_type: int aggregation_temporality: cumulative monotonic: true - attributes: [lock_type, lock_mode] - mongodb.health: - enabled: false - description: The health status of the server. - extended_documentation: A value of '1' indicates healthy. - A value of '0' indicates unhealthy. - unit: "1" - gauge: - value_type: int - attributes: [] - mongodb.uptime: + attributes: [operation] + mongodb.page_faults: + description: The number of page faults. + stability: development + unit: "{faults}" enabled: false - description: The amount of time that the server has been running. - unit: ms sum: value_type: int - monotonic: true aggregation_temporality: cumulative + monotonic: true attributes: [] - mongodb.repl_queries_per_sec: - description: The number of replicated queries executed per second. + mongodb.queries.rate: + description: The number of queries executed per second. + stability: development unit: "{query}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.repl_inserts_per_sec: - description: The number of replicated insertions executed per second. - unit: "{insert}/s" - enabled: false - gauge: - value_type: double - aggregation_temporality: delta - monotonic: false mongodb.repl_commands_per_sec: description: The number of replicated commands executed per second. + stability: development unit: "{command}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.repl_getmores_per_sec: - description: The number of replicated getmores executed per second. - unit: "{getmore}/s" - enabled: false - gauge: - value_type: double - aggregation_temporality: delta - monotonic: false mongodb.repl_deletes_per_sec: description: The number of replicated deletes executed per second. + stability: development unit: "{delete}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.repl_updates_per_sec: - description: The number of replicated updates executed per second. - unit: "{update}/s" - enabled: false - gauge: - value_type: double - aggregation_temporality: delta - monotonic: false - mongodb.queries.rate: - description: The number of queries executed per second. - unit: "{query}/s" + mongodb.repl_getmores_per_sec: + description: The number of replicated getmores executed per second. + stability: development + unit: "{getmore}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.inserts.rate: - description: The number of insertions executed per second. + mongodb.repl_inserts_per_sec: + description: The number of replicated insertions executed per second. + stability: development unit: "{insert}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.commands.rate: - description: The number of commands executed per second. - unit: "{command}/s" + mongodb.repl_queries_per_sec: + description: The number of replicated queries executed per second. + stability: development + unit: "{query}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.getmores.rate: - description: The number of getmores executed per second. - unit: "{getmore}/s" + mongodb.repl_updates_per_sec: + description: The number of replicated updates executed per second. + stability: development + unit: "{update}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.deletes.rate: - description: The number of deletes executed per second. - unit: "{delete}/s" - enabled: false - gauge: - value_type: double - aggregation_temporality: delta + mongodb.session.count: + description: The total number of active sessions. + stability: development + unit: "{sessions}" + enabled: true + sum: + value_type: int + aggregation_temporality: cumulative monotonic: false + attributes: [] + mongodb.storage.size: + description: The total amount of storage allocated to this collection. + extended_documentation: If collection data is compressed it reflects the compressed size. + stability: development + unit: By + enabled: true + sum: + aggregation_temporality: cumulative + value_type: int + monotonic: true + attributes: [] mongodb.updates.rate: description: The number of updates executed per second. + stability: development unit: "{update}/s" enabled: false gauge: value_type: double aggregation_temporality: delta monotonic: false - mongodb.flushes.rate: - description: The number of flushes executed per second. - unit: "{flush}/s" - enabled: false - gauge: - value_type: double - aggregation_temporality: delta - monotonic: false - mongodb.active.writes: - description: The number of write operations currently being processed. - unit: "{writes}" - enabled: false - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - attributes: [] - mongodb.active.reads: - description: The number of read operations currently being processed. - unit: "{reads}" + mongodb.uptime: enabled: false + description: The amount of time that the server has been running. + stability: development + unit: ms sum: value_type: int + monotonic: true aggregation_temporality: cumulative - monotonic: false attributes: [] mongodb.wtcache.bytes.read: description: The number of bytes read into the WiredTiger cache. + stability: development unit: "By" enabled: false sum: @@ -488,15 +545,6 @@ metrics: aggregation_temporality: cumulative monotonic: true attributes: [] - mongodb.page_faults: - description: The number of page faults. - unit: "{faults}" - enabled: false - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - attributes: [] tests: config: diff --git a/metric-metadata/mysqlreceiver.yaml b/metric-metadata/mysqlreceiver.yaml index 6427594..53e3a56 100644 --- a/metric-metadata/mysqlreceiver.yaml +++ b/metric-metadata/mysqlreceiver.yaml @@ -4,9 +4,10 @@ status: class: receiver stability: beta: [metrics] + development: [logs] distributions: [contrib] codeowners: - active: [antonblock] + active: [antonblock, ishleenk17] seeking_new: true emeritus: [djaglowski] @@ -17,11 +18,6 @@ resource_attributes: type: string attributes: - buffer_pool_pages: - name_override: kind - description: The buffer pool pages types. - type: string - enum: [data, free, misc] buffer_pool_data: name_override: status description: The status of buffer pool data. @@ -32,11 +28,22 @@ attributes: description: The buffer pool operations types. type: string enum: [read_ahead_rnd, read_ahead, read_ahead_evicted, read_requests, reads, wait_free, write_requests] - prepared_statements_command: - name_override: command - description: The prepare statement command types. + buffer_pool_pages: + name_override: kind + description: The buffer pool pages types. type: string - enum: [execute, close, fetch, prepare, reset, send_long_data] + enum: [data, free, misc, total] + cache_status: + name_override: status + description: The status of cache access. + type: string + enum: [hit, miss, overflow] + client.address: + description: Hostname or address of the client. + type: string + client.port: + description: TCP port used by the client. + type: int command: description: The command types. type: string @@ -46,21 +53,121 @@ attributes: description: The connection error type. type: string enum: [accept, internal, max_connections, peer_address, select, tcpwrap, aborted, aborted_clients, locked] - handler: + connection_status: + name_override: status + description: The connection status. + type: string + enum: [accepted, closed, rejected] + db.namespace: + description: The default database for the thread, or empty if none has been selected (originally processlist_db). + type: string + db.query.text: + description: The SQL statement text for the event. + type: string + db.system.name: + description: The name of the database system. + type: string + enum: [mysql] + digest: + description: Digest. + type: string + digest_text: + description: Text before digestion. + type: string + direction: name_override: kind - description: The handler types. + description: The name of the transmission direction. type: string - enum: [commit, delete, discover, external_lock, mrr_init, prepare, read_first, read_key, read_last, read_next, read_prev, read_rnd, read_rnd_next, rollback, savepoint, savepoint_rollback, update, write] + enum: [received, sent] double_writes: name_override: kind description: The doublewrite types. type: string enum: [pages_written, writes] + event_state: + name_override: kind + description: Possible event states. + type: string + enum: [errors, warnings, rows_affected, rows_sent, rows_examined, created_tmp_disk_tables, created_tmp_tables, sort_merge_passes, sort_rows, no_index_used] + handler: + name_override: kind + description: The handler types. + type: string + enum: [commit, delete, discover, external_lock, mrr_init, prepare, read_first, read_key, read_last, read_next, read_prev, read_rnd, read_rnd_next, rollback, savepoint, savepoint_rollback, update, write] + index_name: + name_override: index + type: string + description: The name of the index. + io_waits_operations: + name_override: operation + description: The io_waits operation type. + type: string + enum: [delete, fetch, insert, update] + join_kind: + name_override: kind + description: The kind of join. + type: string + enum: [full, full_range, range, range_check, scan] + locks: + name_override: kind + description: The table locks type. + type: string + enum: [immediate, waited] log_operations: name_override: operation - description: The log operation types. + description: The log operation types. 'fsyncs' aren't available in MariaDB 10.8 or later. + type: string + enum: [waits, write_requests, writes, fsyncs] + mysql.event_id: + description: The thread associated with the event and the thread current event number when the event starts. + type: int + mysql.events_statements_current.digest: + description: The statement digest SHA-256 value as a string of 64 hexadecimal characters, or empty if the statements_digest consumer is no. + type: string + mysql.events_statements_summary_by_digest.count_star: + description: The number of times the statement was executed, report in delta value. + type: int + mysql.events_statements_summary_by_digest.digest: + description: The statement digest SHA-256 value as a string of 64 hexadecimal characters, or empty if the statements_digest consumer is no. + type: string + mysql.events_statements_summary_by_digest.sum_timer_wait: + description: The total time spent executing the statement, report in delta seconds. + type: double + + mysql.events_waits_current.timer_wait: + description: Timing information for the event, indicating elapsed time the event waited in seconds. + type: double + mysql.query_plan: + description: The query plan for the statement, if available. + type: string + mysql.threads.processlist_command: + description: The type of command the thread is executing on behalf of the client for foreground threads, or `Sleep` if the session is idle. + type: string + mysql.threads.processlist_state: + description: An action, event, or state that indicates what the thread is doing. + type: string + mysql.threads.thread_id: + description: The unique identifier for the thread executing the statement. + type: int + mysql.wait_type: + description: The name of the instrument that produced the event. type: string - enum: [waits, write_requests, writes] + mysqlx_threads: + name_override: kind + description: The worker thread count kind. + type: string + enum: [available, active] + network.peer.address: + description: IP address of the peer client. + type: string + network.peer.port: + description: TCP port used by the peer client. + type: int + opened_resources: + name_override: kind + description: The kind of the resource. + type: string + enum: [file, table_definition, table] operations: name_override: operation description: The operation types. @@ -71,6 +178,16 @@ attributes: description: The page operation types. type: string enum: [created, read, written] + prepared_statements_command: + name_override: command + description: The prepare statement command types. + type: string + enum: [execute, close, fetch, prepare, reset, send_long_data] + read_lock_type: + name_override: kind + description: Read operation types. + type: string + enum: [normal, with_shared_locks, high_priority, no_insert, external] row_locks: name_override: kind description: The row lock type. @@ -81,169 +198,155 @@ attributes: description: The row operation type. type: string enum: [deleted, inserted, read, updated] - locks: - name_override: kind - description: The table locks type. + schema: + description: The schema of the object. type: string - enum: [immediate, waited] sorts: name_override: kind description: The sort count type. type: string enum: [merge_passes, range, rows, scan] - threads: - name_override: kind - description: The thread count type. - type: string - enum: [cached, connected, created, running] - schema: - description: The schema of the object. - type: string - io_waits_operations: - name_override: operation - description: The io_waits operation type. - type: string - enum: [delete, fetch, insert, update] table_name: name_override: table type: string description: Table name for event or process. - index_name: - name_override: index - type: string - description: The name of the index. - direction: - name_override: kind - description: The name of the transmission direction. - type: string - enum: [received, sent] - digest: - description: Digest. - type: string - digest_text: - description: Text before digestion. - type: string - event_state: - name_override: kind - description: Possible event states. - type: string - enum: [errors, warnings, rows_affected, rows_sent, rows_examined, created_tmp_disk_tables, created_tmp_tables, sort_merge_passes, sort_rows, no_index_used] - opened_resources: - name_override: kind - description: The kind of the resource. - type: string - enum: [file, table_definition, table] - join_kind: - name_override: kind - description: The kind of join. - type: string - enum: [full, full_range, range, range_check, scan] - read_lock_type: + table_size_type: name_override: kind - description: Read operation types. + description: The table size types. type: string - enum: [normal, with_shared_locks, high_priority, no_insert, external] - write_lock_type: + enum: [data, index] + threads: name_override: kind - description: Write operation types. + description: The thread count type. type: string - enum: [allow_write, concurrent_insert, low_priority, normal, external] + enum: [cached, connected, created, running] tmp_resource: name_override: resource description: The kind of temporary resources. type: string enum: [disk_tables, files, tables] - mysqlx_threads: - name_override: kind - description: The worker thread count kind. + user.name: + description: The user associated with a foreground thread, empty for a background thread (originally processlist_user). type: string - enum: [available, active] - connection_status: - name_override: status - description: The connection status. - type: string - enum: [accepted, closed, rejected] - cache_status: - name_override: status - description: The status of cache access. - type: string - enum: [hit, miss, overflow] - table_size_type: + write_lock_type: name_override: kind - description: The table size types. + description: Write operation types. type: string - enum: [data, index] + enum: [allow_write, concurrent_insert, low_priority, normal, external] +events: + db.server.query_sample: + enabled: true + description: | + Query sample collection enables monitoring of current running database statements. + This provides real-time visibility into active queries, helping users monitor database activity and performance as part of their observability pipeline. + attributes: + - db.system.name + - mysql.threads.thread_id + - user.name + - db.namespace + - mysql.threads.processlist_command + - mysql.threads.processlist_state + - db.query.text + - mysql.events_statements_current.digest + - mysql.event_id + - mysql.wait_type + - mysql.events_waits_current.timer_wait + - client.address + - client.port + - network.peer.address + - network.peer.port + + db.server.top_query: + enabled: false + description: | + Top query collection enables monitoring of the queries that consumed the most CPU in the database. + This provides insights into query performance and resource usage, helping users identify and optimize high-impact queries as part of their observability pipeline. + attributes: + - db.system.name + - db.query.text + - mysql.query_plan + - mysql.events_statements_summary_by_digest.digest + - mysql.events_statements_summary_by_digest.count_star + - mysql.events_statements_summary_by_digest.sum_timer_wait metrics: - mysql.buffer_pool.pages: + mysql.buffer_pool.data_pages: enabled: true - description: The number of pages in the InnoDB buffer pool. + description: The number of data pages in the InnoDB buffer pool. + stability: development unit: "1" sum: value_type: int - input_type: string monotonic: false aggregation_temporality: cumulative - attributes: [buffer_pool_pages] - mysql.buffer_pool.data_pages: + attributes: [buffer_pool_data] + mysql.buffer_pool.limit: enabled: true - description: The number of data pages in the InnoDB buffer pool. - unit: "1" + description: The configured size of the InnoDB buffer pool. + stability: development + unit: By sum: value_type: int + input_type: string monotonic: false aggregation_temporality: cumulative - attributes: [buffer_pool_data] - mysql.buffer_pool.page_flushes: + mysql.buffer_pool.operations: enabled: true - description: The number of requests to flush pages from the InnoDB buffer pool. + description: The number of operations on the InnoDB buffer pool. + stability: development unit: "1" sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - mysql.buffer_pool.operations: + attributes: [buffer_pool_operations] + mysql.buffer_pool.page_flushes: enabled: true - description: The number of operations on the InnoDB buffer pool. + description: The number of requests to flush pages from the InnoDB buffer pool. + stability: development unit: "1" sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - attributes: [buffer_pool_operations] - mysql.buffer_pool.limit: + mysql.buffer_pool.pages: enabled: true - description: The configured size of the InnoDB buffer pool. - unit: By + description: The number of pages in the InnoDB buffer pool. + stability: development + unit: "1" sum: value_type: int input_type: string monotonic: false aggregation_temporality: cumulative + attributes: [buffer_pool_pages] mysql.buffer_pool.usage: enabled: true description: The number of bytes in the InnoDB buffer pool. + stability: development unit: By sum: value_type: int monotonic: false aggregation_temporality: cumulative attributes: [buffer_pool_data] - mysql.prepared_statements: - enabled: true - description: The number of times each type of prepared statement command has been issued. - unit: "1" + mysql.client.network.io: + enabled: false + description: The number of transmitted bytes between server and clients. + stability: development + unit: By sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - attributes: [prepared_statements_command] + attributes: [direction] mysql.commands: enabled: false description: The number of times each type of command has been executed. + stability: development unit: "1" sum: value_type: int @@ -251,9 +354,42 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [command] + mysql.connection.count: + enabled: false + description: The number of connection attempts (successful or not) to the MySQL server. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + mysql.connection.errors: + enabled: false + description: Errors that occur during the client connection process. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [connection_error] + mysql.double_writes: + enabled: true + description: The number of writes to the InnoDB doublewrite buffer. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [double_writes] mysql.handlers: enabled: true description: The number of requests to various MySQL handlers. + stability: development unit: "1" sum: value_type: int @@ -261,29 +397,108 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [handler] - mysql.double_writes: + mysql.index.io.wait.count: enabled: true - description: The number of writes to the InnoDB doublewrite buffer. + description: The total count of I/O wait events for an index. + stability: development + unit: "1" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [io_waits_operations, table_name, schema, index_name] + mysql.index.io.wait.time: + enabled: true + description: The total time of I/O wait events for an index. + stability: development + unit: ns + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + attributes: [io_waits_operations, table_name, schema, index_name] + mysql.joins: + enabled: false + description: The number of joins that perform table scans. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [join_kind] + mysql.locks: + enabled: true + description: The number of MySQL locks. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [locks] + mysql.log_operations: + enabled: true + description: The number of InnoDB log operations. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [log_operations] + mysql.max_used_connections: + enabled: false + description: Maximum number of connections used simultaneously since the server started. + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: false + aggregation_temporality: cumulative + mysql.mysqlx_connections: + enabled: true + description: The number of mysqlx connections. + extended_documentation: This metric is specific for MySQL working as Document Store (X-Plugin). [more docs](https://dev.mysql.com/doc/refman/8.0/en/document-store.html) + stability: development + unit: "1" + sum: + value_type: int + input_type: string + monotonic: true + aggregation_temporality: cumulative + attributes: [connection_status] + mysql.mysqlx_worker_threads: + enabled: false + description: The number of worker threads available. unit: "1" + extended_documentation: This metric is specific for MySQL working as Document Store (X-Plugin). [more docs](https://dev.mysql.com/doc/refman/8.0/en/document-store.html) + stability: development sum: value_type: int input_type: string - monotonic: true + monotonic: false aggregation_temporality: cumulative - attributes: [double_writes] - mysql.log_operations: + attributes: [mysqlx_threads] + mysql.opened_resources: enabled: true - description: The number of InnoDB log operations. + description: The number of opened resources. + stability: development unit: "1" sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - attributes: [log_operations] + attributes: [opened_resources] mysql.operations: enabled: true description: The number of InnoDB operations. + stability: development unit: "1" sum: value_type: int @@ -294,6 +509,7 @@ metrics: mysql.page_operations: enabled: true description: The number of InnoDB page operations. + stability: development unit: "1" sum: value_type: int @@ -301,72 +517,82 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [page_operations] - mysql.table.io.wait.count: - enabled: true - description: The total count of I/O wait events for a table. - unit: "1" + mysql.page_size: + enabled: false + description: InnoDB page size. + stability: development + unit: By sum: value_type: int - monotonic: true + input_type: string + monotonic: false aggregation_temporality: cumulative - attributes: [io_waits_operations, table_name, schema] - mysql.table.io.wait.time: + + mysql.prepared_statements: enabled: true - description: The total time of I/O wait events for a table. - unit: ns + description: The number of times each type of prepared statement command has been issued. + stability: development + unit: "1" sum: value_type: int + input_type: string monotonic: true aggregation_temporality: cumulative - attributes: [io_waits_operations, table_name, schema] - mysql.table.rows: + attributes: [prepared_statements_command] + mysql.query.client.count: enabled: false - description: The number of rows for a given table. + description: The number of statements executed by the server. This includes only statements sent to the server by clients. + stability: development unit: "1" sum: value_type: int - monotonic: false + input_type: string + monotonic: true aggregation_temporality: cumulative - attributes: [table_name, schema] - mysql.table.average_row_length: + mysql.query.count: enabled: false - description: The average row length in bytes for a given table. - unit: By + description: The number of statements executed by the server. + stability: development + unit: "1" sum: value_type: int - monotonic: false + input_type: string + monotonic: true aggregation_temporality: cumulative - attributes: [table_name, schema] - mysql.table.size: + mysql.query.slow.count: enabled: false - description: The table size in bytes for a given table. - unit: By + description: The number of slow queries. + stability: development + unit: "1" sum: value_type: int - monotonic: false + input_type: string + monotonic: true aggregation_temporality: cumulative - attributes: [table_name, schema, table_size_type] - mysql.index.io.wait.count: - enabled: true - description: The total count of I/O wait events for an index. - unit: "1" + mysql.replica.sql_delay: + enabled: false + description: The number of seconds that the replica must lag the source. + stability: development + unit: s sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - attributes: [io_waits_operations, table_name, schema, index_name] - mysql.index.io.wait.time: - enabled: true - description: The total time of I/O wait events for an index. - unit: ns + attributes: [] + mysql.replica.time_behind_source: + enabled: false + description: This field is an indication of how “late” the replica is. + stability: development + unit: s sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - attributes: [io_waits_operations, table_name, schema, index_name] + attributes: [] mysql.row_locks: enabled: true description: The number of InnoDB row locks. + stability: development unit: "1" sum: value_type: int @@ -377,6 +603,7 @@ metrics: mysql.row_operations: enabled: true description: The number of InnoDB row operations. + stability: development unit: "1" sum: value_type: int @@ -384,19 +611,10 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [row_operations] - mysql.locks: - enabled: true - description: The number of MySQL locks. - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [locks] mysql.sorts: enabled: true description: The number of MySQL sorts. + stability: development unit: "1" sum: value_type: int @@ -404,48 +622,60 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [sorts] - mysql.threads: - enabled: true - description: The state of MySQL threads. + mysql.statement_event.count: + enabled: false + description: Summary of current and recent statement events. + stability: development unit: "1" sum: value_type: int - input_type: string monotonic: false aggregation_temporality: cumulative - attributes: [threads] - mysql.client.network.io: + attributes: [schema, digest, digest_text, event_state] + mysql.statement_event.wait.time: enabled: false - description: The number of transmitted bytes between server and clients. + description: The total wait time of the summarized timed events. + stability: development + unit: ns + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + attributes: [schema, digest, digest_text] + mysql.table.average_row_length: + enabled: false + description: The average row length in bytes for a given table. + stability: development unit: By sum: value_type: int - input_type: string - monotonic: true + monotonic: false aggregation_temporality: cumulative - attributes: [direction] - mysql.opened_resources: + attributes: [table_name, schema] + mysql.table.io.wait.count: enabled: true - description: The number of opened resources. + description: The total count of I/O wait events for a table. + stability: development unit: "1" sum: value_type: int - input_type: string monotonic: true aggregation_temporality: cumulative - attributes: [opened_resources] - mysql.uptime: + attributes: [io_waits_operations, table_name, schema] + mysql.table.io.wait.time: enabled: true - description: The number of seconds that the server has been up. - unit: s + description: The total time of I/O wait events for a table. + stability: development + unit: ns sum: value_type: int - input_type: string monotonic: true aggregation_temporality: cumulative + attributes: [io_waits_operations, table_name, schema] mysql.table.lock_wait.read.count: enabled: false description: The total table lock wait read events. + stability: development unit: "1" sum: value_type: int @@ -455,6 +685,7 @@ metrics: mysql.table.lock_wait.read.time: enabled: false description: The total table lock wait read events times. + stability: development unit: ns sum: value_type: int @@ -464,6 +695,7 @@ metrics: mysql.table.lock_wait.write.count: enabled: false description: The total table lock wait write events. + stability: development unit: "1" sum: value_type: int @@ -473,112 +705,37 @@ metrics: mysql.table.lock_wait.write.time: enabled: false description: The total table lock wait write events times. + stability: development unit: ns sum: value_type: int monotonic: false aggregation_temporality: cumulative attributes: [schema, table_name, write_lock_type] - mysql.connection.count: - enabled: false - description: The number of connection attempts (successful or not) to the MySQL server. - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - mysql.connection.errors: - enabled: false - description: Errors that occur during the client connection process. - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [connection_error] - mysql.mysqlx_connections: - enabled: true - description: The number of mysqlx connections. - extended_documentation: This metric is specific for MySQL working as Document Store (X-Plugin). [more docs](https://dev.mysql.com/doc/refman/8.0/en/document-store.html) - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [connection_status] - mysql.joins: - enabled: false - description: The number of joins that perform table scans. - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [join_kind] - mysql.tmp_resources: - enabled: true - description: The number of created temporary resources. - unit: "1" - sum: - value_type: int - input_type: string - monotonic: true - aggregation_temporality: cumulative - attributes: [tmp_resource] - mysql.replica.time_behind_source: - enabled: false - description: This field is an indication of how “late” the replica is. - unit: s - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - attributes: [] - mysql.replica.sql_delay: - enabled: false - description: The number of seconds that the replica must lag the source. - unit: s - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - attributes: [] - mysql.statement_event.count: + mysql.table.rows: enabled: false - description: Summary of current and recent statement events. + description: The number of rows for a given table. + stability: development unit: "1" sum: value_type: int monotonic: false aggregation_temporality: cumulative - attributes: [schema, digest, digest_text, event_state] - mysql.statement_event.wait.time: - enabled: false - description: The total wait time of the summarized timed events. - unit: ns - sum: - value_type: int - monotonic: false - aggregation_temporality: cumulative - attributes: [schema, digest, digest_text] - mysql.mysqlx_worker_threads: + attributes: [table_name, schema] + mysql.table.size: enabled: false - description: The number of worker threads available. - unit: "1" - extended_documentation: This metric is specific for MySQL working as Document Store (X-Plugin). [more docs](https://dev.mysql.com/doc/refman/8.0/en/document-store.html) + description: The table size in bytes for a given table. + stability: development + unit: By sum: value_type: int - input_type: string monotonic: false aggregation_temporality: cumulative - attributes: [mysqlx_threads] + attributes: [table_name, schema, table_size_type] mysql.table_open_cache: enabled: false description: The number of hits, misses or overflows for open tables cache lookups. + stability: development unit: "1" sum: value_type: int @@ -586,30 +743,42 @@ metrics: monotonic: true aggregation_temporality: cumulative attributes: [cache_status] - mysql.query.client.count: - enabled: false - description: The number of statements executed by the server. This includes only statements sent to the server by clients. + mysql.threads: + enabled: true + description: The state of MySQL threads. + stability: development unit: "1" sum: value_type: int input_type: string - monotonic: true + monotonic: false aggregation_temporality: cumulative - mysql.query.count: - enabled: false - description: The number of statements executed by the server. + attributes: [threads] + mysql.tmp_resources: + enabled: true + description: The number of created temporary resources. + stability: development unit: "1" sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative - mysql.query.slow.count: - enabled: false - description: The number of slow queries. - unit: "1" + attributes: [tmp_resource] + mysql.uptime: + enabled: true + description: The number of seconds that the server has been up. + stability: development + unit: s sum: value_type: int input_type: string monotonic: true aggregation_temporality: cumulative + +tests: + config: + goleak: + ignore: + any: + - "github.com/cihub/seelog.(*asyncLoopLogger).processQueue" # see https://github.com/cihub/seelog/issues/182 diff --git a/metric-metadata/networkscraper.yaml b/metric-metadata/networkscraper.yaml index ea4bc1a..699955c 100644 --- a/metric-metadata/networkscraper.yaml +++ b/metric-metadata/networkscraper.yaml @@ -27,19 +27,39 @@ attributes: type: string metrics: - system.network.packets: + system.network.connections: enabled: true - description: The number of packets transferred. - unit: "{packets}" + description: The number of connections. + unit: "{connections}" + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: true - attributes: [device, direction] + monotonic: false + attributes: [protocol, state] + system.network.conntrack.count: + enabled: false + description: The count of entries in conntrack table. + unit: "{entries}" + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + system.network.conntrack.max: + enabled: false + description: The limit for entries in the conntrack table. + unit: "{entries}" + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false system.network.dropped: enabled: true description: The number of packets dropped. unit: "{packets}" + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -49,6 +69,7 @@ metrics: enabled: true description: The number of errors encountered. unit: "{errors}" + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -58,33 +79,19 @@ metrics: enabled: true description: The number of bytes transmitted and received. unit: "By" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: true attributes: [device, direction] - system.network.connections: + system.network.packets: enabled: true - description: The number of connections. - unit: "{connections}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - attributes: [protocol, state] - system.network.conntrack.count: - enabled: false - description: The count of entries in conntrack table. - unit: "{entries}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - system.network.conntrack.max: - enabled: false - description: The limit for entries in the conntrack table. - unit: "{entries}" + description: The number of packets transferred. + unit: "{packets}" + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: false + monotonic: true + attributes: [device, direction] diff --git a/metric-metadata/nfsscraper.yaml b/metric-metadata/nfsscraper.yaml new file mode 100644 index 0000000..07325ab --- /dev/null +++ b/metric-metadata/nfsscraper.yaml @@ -0,0 +1,212 @@ +type: nfs + +status: + class: scraper + stability: + development: [metrics] + distributions: [core, contrib, k8s] + unsupported_platforms: [darwin, windows, freebsd, netbsd, openbsd, dragonfly, zos] + codeowners: + active: [dmitryax, braydonk] + +sem_conv_version: 1.9.0 + +attributes: + error.type: + description: Describes a class of error the operation ended with. + type: string + enum: [format, auth, client] + network.io.direction: + description: The network IO operation direction. + type: string + enum: + - transmit + - receive + network.transport: + description: OSI transport layer or inter-process communication method. + type: string + enum: [udp, tcp] + nfs.operation.name: + description: NFSv4+ operation name. + type: string + nfs.server.repcache.status: + description: "NFS Server replies check a Reply Cache (repcache), which can have one of 3 result states: 'hit', 'miss', or 'nocache'." + type: string + enum: [hit, miss, nocache] + onc_rpc.procedure.name: + description: ONC/Sun RPC procedure name. + type: string + onc_rpc.version: + description: ONC/Sun RPC program version. + type: int + +metrics: + nfs.client.net.count: + enabled: true + description: Reports the count of kernel NFS client TCP segments and UDP datagrams handled. + unit: '{record}' + attributes: [network.transport] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.net.tcp.connection.accepted: + enabled: true + description: Reports the count of kernel NFS client TCP connections accepted + unit: '{connection}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.operation.count: + enabled: true + description: Reports the count of kernel NFSv4+ client operations + unit: '{operation}' + attributes: + - onc_rpc.version + - nfs.operation.name + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.procedure.count: + enabled: true + description: Reports the count of kernel NFS client procedures + unit: '{procedure}' + attributes: [onc_rpc.version, onc_rpc.procedure.name] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.rpc.authrefresh.count: + enabled: true + description: Reports the count of kernel NFS client RPC authentication refreshes + unit: '{authrefresh}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.rpc.count: + enabled: true + description: Reports the count of kernel NFS client RPCs sent, regardless of whether they're accepted/rejected by the server. + unit: '{request}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.client.rpc.retransmit.count: + enabled: true + description: Reports the count of kernel NFS client RPC retransmits + unit: '{retransmit}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.fh.stale.count: + enabled: true + description: Reports the cumulative count of kernel NFS server stale file handles. + unit: '{fh}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.io: + enabled: true + description: Reports the count of kernel NFS server bytes returned to receive and transmit (read and write) requests. + unit: By + attributes: [network.io.direction] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.net.count: + enabled: true + description: Reports the count of kernel NFS server TCP segments and UDP datagrams handled. + unit: '{request}' + attributes: [network.transport] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.net.tcp.connection.accepted: + enabled: true + description: Reports the count of kernel NFS server TCP connections accepted + unit: '{connection}' + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.operation.count: + enabled: true + description: Reports the count of kernel NFSv4+ server operations + unit: '{operation}' + attributes: [onc_rpc.version, nfs.operation.name] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.procedure.count: + enabled: true + description: Reports the count of kernel NFS server procedures + unit: '{procedure}' + attributes: [onc_rpc.version, onc_rpc.procedure.name] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + nfs.server.repcache.requests: + enabled: true + description: Reports the kernel NFS server reply cache request count by cache hit status. + unit: '{request}' + attributes: [nfs.server.repcache.status] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.rpc.count: + enabled: true + description: Reports the count of kernel NFS server RPCs handled. + unit: '{request}' + attributes: [error.type] + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + stability: development + + nfs.server.thread.count: + enabled: true + description: Reports the count of kernel NFS server available threads + unit: '{thread}' + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + stability: development diff --git a/metric-metadata/nginxreceiver.yaml b/metric-metadata/nginxreceiver.yaml index 3f75643..ce68901 100644 --- a/metric-metadata/nginxreceiver.yaml +++ b/metric-metadata/nginxreceiver.yaml @@ -6,7 +6,7 @@ status: beta: [metrics] distributions: [contrib] codeowners: - active: [colelaven] + active: [colelaven, ishleenk17] emeritus: [djaglowski] attributes: @@ -14,45 +14,49 @@ attributes: description: The state of a connection type: string enum: - - active - - reading - - writing - - waiting + - active + - reading + - writing + - waiting metrics: - nginx.requests: + nginx.connections_accepted: enabled: true - description: Total number of requests made to the server since it started - unit: requests + description: The total number of accepted client connections + stability: development + unit: connections sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] - nginx.connections_accepted: + nginx.connections_current: enabled: true - description: The total number of accepted client connections + description: The current number of nginx connections by state + stability: development unit: connections sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - attributes: [] + attributes: [state] nginx.connections_handled: enabled: true description: The total number of handled connections. Generally, the parameter value is the same as nginx.connections_accepted unless some resource limits have been reached (for example, the worker_connections limit). + stability: development unit: connections sum: value_type: int monotonic: true aggregation_temporality: cumulative attributes: [] - nginx.connections_current: + nginx.requests: enabled: true - description: The current number of nginx connections by state - unit: connections + description: Total number of requests made to the server since it started + stability: development + unit: requests sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - attributes: [state] + attributes: [] diff --git a/metric-metadata/nova.yaml b/metric-metadata/nova.yaml new file mode 100644 index 0000000..594a22f --- /dev/null +++ b/metric-metadata/nova.yaml @@ -0,0 +1,42 @@ +type: novadetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [dashpole, paulojmdias] + +resource_attributes: + cloud.account.id: + description: The cloud account id (e.g., OpenStack project or tenant ID) + type: string + enabled: true + cloud.availability_zone: + description: The cloud availability zone + type: string + enabled: true + cloud.platform: + description: The cloud platform + type: string + enabled: true + cloud.provider: + description: The cloud provider + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + host.type: + description: The host instance type (Nova flavor name or ID) + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/nsxtreceiver.yaml b/metric-metadata/nsxtreceiver.yaml index c11ca13..2f19be3 100644 --- a/metric-metadata/nsxtreceiver.yaml +++ b/metric-metadata/nsxtreceiver.yaml @@ -9,24 +9,31 @@ status: active: [dashpole, schmikei] resource_attributes: - nsxt.node.name: - description: The name of the NSX Node. + device.id: + description: The name of the network interface. enabled: true type: string + nsxt.node.id: description: The ID of the NSX Node. enabled: true type: string - nsxt.node.type: - description: The type of NSX Node. + nsxt.node.name: + description: The name of the NSX Node. enabled: true type: string - device.id: - description: The name of the network interface. + nsxt.node.type: + description: The type of NSX Node. enabled: true type: string attributes: + class: + description: The CPU usage of the architecture allocated for either DPDK (datapath) or non-DPDK (services) processes. + type: string + enum: + - datapath + - services direction: description: The direction of network flow. type: string @@ -48,67 +55,68 @@ attributes: - dropped - errored - success - class: - description: The CPU usage of the architecture allocated for either DPDK (datapath) or non-DPDK (services) processes. - type: string - enum: - - datapath - - services metrics: - nsxt.node.network.io: - description: The number of bytes which have flowed through the network interface. - unit: "By" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - enabled: true - attributes: [direction] - nsxt.node.network.packet.count: - description: The number of packets which have flowed through the network interface on the node. - unit: "{packets}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - enabled: true - attributes: [direction, packet.type] nsxt.node.cpu.utilization: description: The average amount of CPU being used by the node. + stability: development unit: "%" gauge: value_type: double enabled: true attributes: [class] + nsxt.node.filesystem.usage: + description: The amount of storage space used by the node. + stability: development + unit: By + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + enabled: true + attributes: [disk_state] nsxt.node.filesystem.utilization: description: The percentage of storage space utilized. + stability: development unit: "%" gauge: value_type: double enabled: true - nsxt.node.filesystem.usage: - description: The amount of storage space used by the node. - unit: By + nsxt.node.memory.cache.usage: + description: The size of the node's memory cache. + stability: development + unit: KBy sum: monotonic: false value_type: int aggregation_temporality: cumulative enabled: true - attributes: [disk_state] nsxt.node.memory.usage: description: The memory usage of the node. + stability: development unit: KBy sum: monotonic: false value_type: int aggregation_temporality: cumulative enabled: true - nsxt.node.memory.cache.usage: - description: The size of the node's memory cache. - unit: KBy + nsxt.node.network.io: + description: The number of bytes which have flowed through the network interface. + stability: development + unit: "By" sum: - monotonic: false + monotonic: true + aggregation_temporality: cumulative value_type: int + enabled: true + attributes: [direction] + nsxt.node.network.packet.count: + description: The number of packets which have flowed through the network interface on the node. + stability: development + unit: "{packets}" + sum: + monotonic: true aggregation_temporality: cumulative + value_type: int enabled: true + attributes: [direction, packet.type] diff --git a/metric-metadata/ntpreceiver.yaml b/metric-metadata/ntpreceiver.yaml index 8e5b981..dac42bc 100644 --- a/metric-metadata/ntpreceiver.yaml +++ b/metric-metadata/ntpreceiver.yaml @@ -6,7 +6,7 @@ status: beta: [metrics] distributions: [contrib] codeowners: - active: [atoulme] + active: [atoulme, paulojmdias] seeking_new: true resource_attributes: @@ -18,9 +18,8 @@ resource_attributes: metrics: ntp.offset: description: Time difference between local and NTP server clocks - unit: "ns" + enabled: true + stability: development gauge: value_type: int - enabled: true - -tests: \ No newline at end of file + unit: "ns" diff --git a/metric-metadata/oauth2clientauthextension.yaml b/metric-metadata/oauth2clientauthextension.yaml index 7145fd0..1fc8a20 100644 --- a/metric-metadata/oauth2clientauthextension.yaml +++ b/metric-metadata/oauth2clientauthextension.yaml @@ -1,3 +1,4 @@ +display_name: OAuth2 Client Credentials Authenticator Extension type: oauth2client status: @@ -12,3 +13,8 @@ status: tests: config: + goleak: + ignore: + top: + - "net/http.(*persistConn).readLoop" + - "net/http.(*persistConn).writeLoop" diff --git a/metric-metadata/oidcauthextension.yaml b/metric-metadata/oidcauthextension.yaml index f3d2fbd..778fffc 100644 --- a/metric-metadata/oidcauthextension.yaml +++ b/metric-metadata/oidcauthextension.yaml @@ -1,3 +1,4 @@ +display_name: OIDC Authenticator Extension type: oidc status: @@ -7,6 +8,7 @@ status: distributions: [contrib, k8s] codeowners: seeking_new: true + active: [asweet-confluent] emeritus: [jpkrohling] tests: diff --git a/metric-metadata/opampextension.yaml b/metric-metadata/opampextension.yaml index 14b4319..5c0f80c 100644 --- a/metric-metadata/opampextension.yaml +++ b/metric-metadata/opampextension.yaml @@ -1,3 +1,4 @@ +display_name: OpAMP Agent Extension type: opamp status: diff --git a/metric-metadata/opensearchexporter.yaml b/metric-metadata/opensearchexporter.yaml index f5e306a..da5b5a6 100644 --- a/metric-metadata/opensearchexporter.yaml +++ b/metric-metadata/opensearchexporter.yaml @@ -1,12 +1,13 @@ type: opensearch +display_name: OpenSearch Exporter status: class: exporter stability: - unmaintained: [traces, logs] + alpha: [traces, logs] distributions: [contrib] codeowners: - active: [] + active: [ps48] emeritus: [Aneurysm9, MitchellGale, MaxKsyunz, YANG-DB] seeking_new: true diff --git a/metric-metadata/openshift.yaml b/metric-metadata/openshift.yaml index 8a4896b..0aec59a 100644 --- a/metric-metadata/openshift.yaml +++ b/metric-metadata/openshift.yaml @@ -3,14 +3,14 @@ type: resourcedetectionprocessor/openshift parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true cloud.platform: description: The cloud.platform type: string enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true cloud.region: description: The cloud.region type: string diff --git a/metric-metadata/oraclecloud.yaml b/metric-metadata/oraclecloud.yaml new file mode 100644 index 0000000..f465938 --- /dev/null +++ b/metric-metadata/oraclecloud.yaml @@ -0,0 +1,44 @@ +type: resourcedetectionprocessor/oraclecloud + +parent: resourcedetection + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [dashpole] + +resource_attributes: + cloud.availability_zone: + description: The cloud.availability_zone + type: string + enabled: true + cloud.platform: + description: The cloud.platform + type: string + enabled: true + cloud.provider: + description: The cloud.provider + type: string + enabled: true + cloud.region: + description: The cloud.region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + host.type: + description: The instance type (shape) + enabled: true + type: string + k8s.cluster.name: + description: k8s.cluster.name + enabled: true + type: string diff --git a/metric-metadata/oracledbreceiver.yaml b/metric-metadata/oracledbreceiver.yaml index cf1987d..9b73d0e 100644 --- a/metric-metadata/oracledbreceiver.yaml +++ b/metric-metadata/oracledbreceiver.yaml @@ -4,17 +4,159 @@ status: class: receiver stability: alpha: [metrics] + development: [logs] distributions: [contrib] codeowners: active: [dmitryax, crobert-1, atoulme] resource_attributes: + host.name: + description: The host name of Oracle Server + enabled: true + type: string oracledb.instance.name: description: The name of the instance that data is coming from. enabled: true type: string + service.instance.id: + description: A unique identifier of the Oracle DB instance in the format host:port/serviceName. (defaults to 'unknown:1521', in case of error in generating this value) + enabled: true + type: string attributes: + client.address: + description: Hostname or address of the client. + type: string + client.port: + description: TCP port used by the client. + type: int + db.namespace: + description: The database name. + type: string + db.query.text: + description: The text of the database query being executed. + type: string + db.server.name: + description: The name of the server hosting the database. + type: string + db.system.name: + description: The database management system (DBMS) product as identified by the client instrumentation. + type: string + network.peer.address: + description: IP address of the peer client. + type: string + network.peer.port: + description: TCP port used by the peer client. + type: int + oracledb.application_wait_time: + description: The total time (in seconds) a query spent waiting on the application before it could proceed with execution (reporting delta). + type: double + oracledb.buffer_gets: + description: Number of logical reads (i.e., buffer cache accesses) performed by a query (reporting delta). + type: int + oracledb.child_address: + description: Address of the child cursor. + type: string + oracledb.child_number: + description: The child number of the query. + type: string + oracledb.cluster_wait_time: + description: Total time (in seconds) that a query waited due to Oracle Real Application Clusters (RAC) coordination (reporting delta). + type: double + oracledb.concurrency_wait_time: + description: Total time (in seconds) a query spent waiting on concurrency-related events (reporting delta). + type: double + oracledb.cpu_time: + description: Total time (in seconds) that the CPU spent actively processing a query, excluding time spent waiting (reporting delta). + type: double + oracledb.direct_reads: + description: The number of direct path reads performed by a query — i.e., data blocks read directly from disk into the session’s memory (reporting delta). + type: int + oracledb.direct_writes: + description: The number of direct path write operations, where data is written directly to disk from user memory (reporting delta). + type: int + oracledb.disk_reads: + description: The number of physical reads a query performs — that is, the number of data blocks read from disk (reporting delta). + type: int + oracledb.duration_sec: + description: Total time taken by a database query to execute. + type: double + + oracledb.elapsed_time: + description: The total time (in seconds) taken by a query from start to finish, including CPU time and all types of waits (reporting delta). + type: double + oracledb.event: + description: The specific wait event that a query or session is currently experiencing. + type: string + oracledb.executions: + description: The number of times a specific SQL query has been executed (reporting delta). + type: int + oracledb.module: + description: Logical module name of the client application that initiated a query or session. + type: string + oracledb.osuser: + description: Name of the operating system user that initiated or is running the Oracle database session. + type: string + oracledb.physical_read_bytes: + description: The total number of bytes read from disk by a query (reporting delta). + type: int + oracledb.physical_read_requests: + description: The number of physical I/O read operations performed by a query (reporting delta). + type: int + oracledb.physical_write_bytes: + description: The total number of bytes written to disk by a query (reporting delta). + type: int + oracledb.physical_write_requests: + description: The number of times a query requested to write data to disk (reporting delta). + type: int + oracledb.plan_hash_value: + description: Binary hash value calculated on the query execution plan and used to identify similar query execution plans, reported in the HEX format. + type: string + oracledb.procedure_id: + description: The identifier of the stored procedure or function being executed by the query. + type: int + oracledb.procedure_name: + description: Name of the database object that a query is accessing. + type: string + oracledb.procedure_type: + description: Type of the database object that a query is accessing. + type: string + oracledb.process: + description: The operating system process ID (PID) associated with a session. + type: string + oracledb.program: + description: Name of the client program or tool that initiated the Oracle database session. + type: string + oracledb.query_plan: + description: The query execution plan used by the SQL Server. + type: string + oracledb.rows_processed: + description: The total number of rows that a query has read, returned, or affected during its execution (reporting delta). + type: int + oracledb.schemaname: + description: Oracle schema under which SQL statements are being executed + type: string + oracledb.serial: + description: Serial number associated with a session. + type: string + oracledb.sid: + description: ID of the Oracle Server session. + type: string + oracledb.sql_id: + description: The SQL ID of the query. + type: string + oracledb.state: + description: Current state of the query or the session executing it. + type: string + oracledb.status: + description: Execution state or result of a database query or session. + type: string + oracledb.user_io_wait_time: + description: The total time (in seconds) a query spent waiting for user I/O operations—such as reading or writing data to disk or network file systems (reporting delta). + type: double + oracledb.wait_class: + description: The category of wait events a query or session is currently experiencing in Oracle Database. + type: string session_status: description: Session status type: string @@ -24,31 +166,186 @@ attributes: tablespace_name: description: Tablespace name type: string + # attributes for events + ## top query + user.name: + description: Database user name under which a session is connected to + type: string +events: + db.server.query_sample: + enabled: false + description: sample query + attributes: + - db.query.text + - db.system.name + - user.name + - db.namespace + - client.address + - client.port + - network.peer.address + - network.peer.port + - oracledb.plan_hash_value + - oracledb.sql_id + - oracledb.child_number + - oracledb.child_address + - oracledb.sid + - oracledb.serial + - oracledb.process + - oracledb.schemaname + - oracledb.program + - oracledb.module + - oracledb.status + - oracledb.state + - oracledb.wait_class + - oracledb.event + - oracledb.procedure_id + - oracledb.procedure_name + - oracledb.procedure_type + - oracledb.osuser + - oracledb.duration_sec + db.server.top_query: + enabled: false + description: Collection of event metrics for top N queries, filtered based on the highest CPU time consumed (oracledb.elapsed_time). + attributes: + - db.system.name + - db.server.name + - db.query.text + - oracledb.query_plan + - oracledb.sql_id + - oracledb.child_number + - oracledb.child_address + - oracledb.application_wait_time + - oracledb.buffer_gets + - oracledb.cluster_wait_time + - oracledb.concurrency_wait_time + - oracledb.cpu_time + - oracledb.direct_reads + - oracledb.direct_writes + - oracledb.disk_reads + - oracledb.elapsed_time + - oracledb.executions + - oracledb.physical_read_bytes + - oracledb.physical_read_requests + - oracledb.physical_write_bytes + - oracledb.physical_write_requests + - oracledb.rows_processed + - oracledb.user_io_wait_time + - oracledb.procedure_id + - oracledb.procedure_name + - oracledb.procedure_type metrics: + oracledb.consistent_gets: + description: Number of times a consistent read was requested for a block from the buffer cache. + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{gets}" oracledb.cpu_time: description: Cumulative CPU time, in seconds enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: double unit: s + oracledb.db_block_gets: + description: Number of times a current block was requested from the buffer cache. + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{gets}" + oracledb.ddl_statements_parallelized: + description: Number of DDL statements that were executed in parallel + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{statements}" + oracledb.dml_locks.limit: + description: Maximum limit of active DML (Data Manipulation Language) locks, -1 if unlimited. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{locks}" + oracledb.dml_locks.usage: + description: Current count of active DML (Data Manipulation Language) locks. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{locks}" + oracledb.dml_statements_parallelized: + description: Number of DML statements that were executed in parallel + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{statements}" oracledb.enqueue_deadlocks: - description: Total number of deadlocks between table or row locks in different - sessions. + description: Total number of deadlocks between table or row locks in different sessions. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: "{deadlocks}" + oracledb.enqueue_locks.limit: + description: Maximum limit of active enqueue locks, -1 if unlimited. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{locks}" + oracledb.enqueue_locks.usage: + description: Current count of active enqueue locks. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{locks}" + oracledb.enqueue_resources.limit: + description: Maximum limit of active enqueue resources, -1 if unlimited. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{resources}" + oracledb.enqueue_resources.usage: + description: Current count of active enqueue resources. + enabled: true + stability: development + gauge: + value_type: int + input_type: string + unit: "{resources}" oracledb.exchange_deadlocks: - description: Number of times that a process detected a potential deadlock when - exchanging two buffers and raised an internal, restartable error. Index scans - are the only operations that perform exchanges. + description: Number of times that a process detected a potential deadlock when exchanging two buffers and raised an internal, restartable error. Index scans are the only operations that perform exchanges. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -58,33 +355,109 @@ metrics: oracledb.executions: description: Total number of calls (user and recursive) that executed SQL statements enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: "{executions}" + oracledb.hard_parses: + description: Number of hard parses + enabled: true + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{parses}" oracledb.logical_reads: description: Number of logical reads enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: "{reads}" - oracledb.hard_parses: - description: Number of hard parses - enabled: true + oracledb.logons: + description: Number of logon operations + enabled: false + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{parses}" + unit: "{operation}" + + + oracledb.parallel_operations_downgraded_1_to_25_pct: + description: Number of times parallel execution was requested and the degree of parallelism was reduced down to 1-25% because of insufficient parallel execution servers + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" + oracledb.parallel_operations_downgraded_25_to_50_pct: + description: Number of times parallel execution was requested and the degree of parallelism was reduced down to 25-50% because of insufficient parallel execution servers + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" + oracledb.parallel_operations_downgraded_50_to_75_pct: + description: Number of times parallel execution was requested and the degree of parallelism was reduced down to 50-75% because of insufficient parallel execution servers + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" + oracledb.parallel_operations_downgraded_75_to_99_pct: + description: Number of times parallel execution was requested and the degree of parallelism was reduced down to 75-99% because of insufficient parallel execution servers + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" + oracledb.parallel_operations_downgraded_to_serial: + description: Number of times parallel execution was requested but execution was serial because of insufficient parallel execution servers + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" + oracledb.parallel_operations_not_downgraded: + description: Number of times parallel execution was executed at the requested degree of parallelism + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{executions}" oracledb.parse_calls: description: Total number of parse calls. enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -94,15 +467,27 @@ metrics: oracledb.pga_memory: description: Session PGA (Program Global Area) memory enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: By + oracledb.physical_read_io_requests: + description: Number of read requests for application activity + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: int + input_type: string + unit: "{requests}" oracledb.physical_reads: description: Number of physical reads enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -112,15 +497,17 @@ metrics: oracledb.physical_reads_direct: description: Number of reads directly from disk, bypassing the buffer cache enabled: false + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: "{reads}" - oracledb.physical_read_io_requests: - description: Number of read requests for application activity + oracledb.physical_write_io_requests: + description: Number of write requests for application activity enabled: false + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -130,6 +517,7 @@ metrics: oracledb.physical_writes: description: Number of physical writes enabled: false + stability: development sum: aggregation_temporality: cumulative monotonic: true @@ -139,134 +527,64 @@ metrics: oracledb.physical_writes_direct: description: Number of writes directly to disk, bypassing the buffer cache enabled: false + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string unit: "{writes}" - oracledb.physical_write_io_requests: - description: Number of write requests for application activity - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{requests}" - oracledb.user_commits: - description: Number of user commits. When a user commits a transaction, the redo - generated that reflects the changes made to database blocks must be written - to disk. Commits often represent the closest thing to a user transaction rate. - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{commits}" - oracledb.user_rollbacks: - description: Number of times users manually issue the ROLLBACK statement or an - error occurs during a user's transactions - enabled: true - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "1" - oracledb.sessions.usage: - attributes: - - session_type - - session_status - description: Count of active sessions. + oracledb.processes.limit: + description: Maximum limit of active processes, -1 if unlimited. enabled: true + stability: development gauge: value_type: int input_type: string - unit: "{sessions}" + unit: "{processes}" oracledb.processes.usage: description: Current count of active processes. enabled: true + stability: development gauge: value_type: int input_type: string unit: "{processes}" - oracledb.processes.limit: - description: Maximum limit of active processes, -1 if unlimited. - enabled: true - gauge: + oracledb.queries_parallelized: + description: Number of SELECT statements executed in parallel + enabled: false + stability: development + sum: + aggregation_temporality: cumulative + monotonic: true value_type: int input_type: string - unit: "{processes}" + unit: "{queries}" oracledb.sessions.limit: description: Maximum limit of active sessions, -1 if unlimited. enabled: true + stability: development gauge: value_type: int input_type: string unit: "{sessions}" - oracledb.enqueue_locks.usage: - description: Current count of active enqueue locks. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{locks}" - oracledb.enqueue_locks.limit: - description: Maximum limit of active enqueue locks, -1 if unlimited. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{locks}" - oracledb.dml_locks.usage: - description: Current count of active DML (Data Manipulation Language) locks. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{locks}" - oracledb.dml_locks.limit: - description: Maximum limit of active DML (Data Manipulation Language) locks, -1 if unlimited. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{locks}" - oracledb.enqueue_resources.usage: - description: Current count of active enqueue resources. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{resources}" - oracledb.enqueue_resources.limit: - description: Maximum limit of active enqueue resources, -1 if unlimited. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{resources}" - oracledb.transactions.usage: - description: Current count of active transactions. - enabled: true - gauge: - value_type: int - input_type: string - unit: "{transactions}" - oracledb.transactions.limit: - description: Maximum limit of active transactions, -1 if unlimited. + oracledb.sessions.usage: + attributes: + - session_type + - session_status + description: Count of active sessions. enabled: true + stability: development gauge: value_type: int input_type: string - unit: "{transactions}" + unit: "{sessions}" oracledb.tablespace_size.limit: attributes: - tablespace_name description: Maximum size of tablespace in bytes, -1 if unlimited. enabled: true + stability: development gauge: value_type: int unit: By @@ -275,115 +593,50 @@ metrics: - tablespace_name description: Used tablespace in bytes. enabled: true + stability: development gauge: value_type: int unit: By - oracledb.db_block_gets: - description: Number of times a current block was requested from the buffer cache. - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{gets}" - oracledb.consistent_gets: - description: Number of times a consistent read was requested for a block from the buffer cache. - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{gets}" - oracledb.queries_parallelized: - description: Number of SELECT statements executed in parallel - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{queries}" - oracledb.ddl_statements_parallelized: - description: Number of DDL statements that were executed in parallel - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{statements}" - oracledb.dml_statements_parallelized: - description: Number of DML statements that were executed in parallel - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{statements}" - oracledb.parallel_operations_not_downgraded: - description: Number of times parallel execution was executed at the - requested degree of parallelism - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{executions}" - oracledb.parallel_operations_downgraded_to_serial: - description: Number of times parallel execution was requested but execution - was serial because of insufficient parallel execution servers - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true - value_type: int - input_type: string - unit: "{executions}" - oracledb.parallel_operations_downgraded_1_to_25_pct: - description: Number of times parallel execution was requested and the - degree of parallelism was reduced down to 1-25% because of insufficient - parallel execution servers - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true + oracledb.transactions.limit: + description: Maximum limit of active transactions, -1 if unlimited. + enabled: true + stability: development + gauge: value_type: int input_type: string - unit: "{executions}" - oracledb.parallel_operations_downgraded_25_to_50_pct: - description: Number of times parallel execution was requested and the - degree of parallelism was reduced down to 25-50% because of insufficient - parallel execution servers - enabled: false - sum: - aggregation_temporality: cumulative - monotonic: true + unit: "{transactions}" + oracledb.transactions.usage: + description: Current count of active transactions. + enabled: true + stability: development + gauge: value_type: int input_type: string - unit: "{executions}" - oracledb.parallel_operations_downgraded_50_to_75_pct: - description: Number of times parallel execution was requested and the - degree of parallelism was reduced down to 50-75% because of insufficient - parallel execution servers - enabled: false + unit: "{transactions}" + oracledb.user_commits: + description: Number of user commits. When a user commits a transaction, the redo generated that reflects the changes made to database blocks must be written to disk. Commits often represent the closest thing to a user transaction rate. + enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{executions}" - oracledb.parallel_operations_downgraded_75_to_99_pct: - description: Number of times parallel execution was requested and the - degree of parallelism was reduced down to 75-99% because of insufficient - parallel execution servers - enabled: false + unit: "{commits}" + oracledb.user_rollbacks: + description: Number of times users manually issue the ROLLBACK statement or an error occurs during a user's transactions + enabled: true + stability: development sum: aggregation_temporality: cumulative monotonic: true value_type: int input_type: string - unit: "{executions}" + unit: "1" + +tests: + config: + goleak: + ignore: + any: + - "github.com/cihub/seelog.(*asyncLoopLogger).processQueue" # see https://github.com/cihub/seelog/issues/182 diff --git a/metric-metadata/osqueryreceiver.yaml b/metric-metadata/osqueryreceiver.yaml index f389c06..c17e1b1 100644 --- a/metric-metadata/osqueryreceiver.yaml +++ b/metric-metadata/osqueryreceiver.yaml @@ -5,7 +5,8 @@ status: stability: development: [logs] codeowners: - active: [nslaughter, smithclay] + active: [smithclay] + emeritus: [nslaughter] # TODO: Update the receiver to pass the tests tests: diff --git a/metric-metadata/otelarrow.yaml b/metric-metadata/otelarrow.yaml index 1a2545e..9580802 100644 --- a/metric-metadata/otelarrow.yaml +++ b/metric-metadata/otelarrow.yaml @@ -12,6 +12,7 @@ telemetry: metrics: otelarrow_admission_in_flight_bytes: description: Number of bytes that have started processing but are not finished. + stability: development unit: By enabled: true sum: @@ -21,6 +22,7 @@ telemetry: otelarrow_admission_waiting_bytes: description: Number of items waiting to start processing. + stability: development enabled: true unit: By sum: diff --git a/metric-metadata/otelarrowexporter.yaml b/metric-metadata/otelarrowexporter.yaml index 9fb15ae..de25db9 100644 --- a/metric-metadata/otelarrowexporter.yaml +++ b/metric-metadata/otelarrowexporter.yaml @@ -1,4 +1,5 @@ type: otelarrow +display_name: OpenTelemetry Arrow Exporter status: class: exporter diff --git a/metric-metadata/otlpencodingextension.yaml b/metric-metadata/otlpencodingextension.yaml index 3bfe7c8..384d806 100644 --- a/metric-metadata/otlpencodingextension.yaml +++ b/metric-metadata/otlpencodingextension.yaml @@ -1,11 +1,16 @@ +display_name: OTLP Encoding Extension type: otlp_encoding +description: > + This extension unmarshals and marshals data encoded according to the + [OTLP specification](https://opentelemetry.io/docs/specs/otlp/). + status: disable_codecov_badge: true class: extension stability: - alpha: [ extension ] - distributions: [ ] + beta: [ extension ] + distributions: [contrib] codeowners: active: [ dao-jun, VihasMakwana ] diff --git a/metric-metadata/otlpjsonconnector.yaml b/metric-metadata/otlpjsonconnector.yaml index 415f923..5ed51bc 100644 --- a/metric-metadata/otlpjsonconnector.yaml +++ b/metric-metadata/otlpjsonconnector.yaml @@ -1,4 +1,5 @@ type: otlpjson +display_name: OTLP JSON Connector status: class: connector diff --git a/metric-metadata/ottl.yaml b/metric-metadata/ottl.yaml index 3cf02d2..000c6e2 100644 --- a/metric-metadata/ottl.yaml +++ b/metric-metadata/ottl.yaml @@ -7,6 +7,6 @@ status: development: [ profiles ] beta: [ traces, metrics, logs ] codeowners: - active: [TylerHelmuth, evan-bradley, edmocosta] - emeritus: [anuraaga, kentquirk, bogdandrutu] + active: [TylerHelmuth, evan-bradley, edmocosta, bogdandrutu] + emeritus: [anuraaga, kentquirk] seeking_new: true diff --git a/metric-metadata/pagingscraper.yaml b/metric-metadata/pagingscraper.yaml index 70f3a77..b199dde 100644 --- a/metric-metadata/pagingscraper.yaml +++ b/metric-metadata/pagingscraper.yaml @@ -31,40 +31,43 @@ attributes: enum: [major, minor] metrics: - system.paging.usage: + system.paging.faults: enabled: true - description: Swap (unix) or pagefile (windows) usage. - unit: By + description: The number of page faults. + unit: "{faults}" + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: false - attributes: [device, state] + monotonic: true + attributes: [type] system.paging.operations: enabled: true description: The number of paging operations. unit: "{operations}" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: true attributes: [direction, type] - - system.paging.faults: + system.paging.usage: enabled: true - description: The number of page faults. - unit: "{faults}" + description: Swap (unix) or pagefile (windows) usage. + unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: true - attributes: [type] + monotonic: false + attributes: [device, state] system.paging.utilization: enabled: false description: Swap (unix) or pagefile (windows) utilization. unit: "1" + stability: development gauge: value_type: double attributes: [device, state] diff --git a/metric-metadata/pdatautil.yaml b/metric-metadata/pdatautil.yaml index ecfe8d4..03d9978 100644 --- a/metric-metadata/pdatautil.yaml +++ b/metric-metadata/pdatautil.yaml @@ -1,5 +1,5 @@ status: disable_codecov_badge: true - class: pkg codeowners: - active: [dmitryax] + emeritus: [djaglowski] + seeking_new: true diff --git a/metric-metadata/podmanreceiver.yaml b/metric-metadata/podmanreceiver.yaml index 538f945..b9fa5d8 100644 --- a/metric-metadata/podmanreceiver.yaml +++ b/metric-metadata/podmanreceiver.yaml @@ -10,10 +10,6 @@ status: unsupported_platforms: [windows] resource_attributes: - container.runtime: - description: "The runtime of the container. For this receiver, it will always be 'podman'." - type: string - enabled: true container.id: description: "The ID of the container." type: string @@ -26,6 +22,10 @@ resource_attributes: description: "The name of the container." type: string enabled: true + container.runtime: + description: "The runtime of the container. For this receiver, it will always be 'podman'." + type: string + enabled: true attributes: core: @@ -33,26 +33,40 @@ attributes: type: string metrics: - # CPU - container.cpu.usage.system: + # BlockIO + container.blockio.io_service_bytes_recursive.read: enabled: true - description: "System CPU usage." - unit: s + description: "Number of bytes transferred from the disk by the container" + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + stability: development + unit: "{operations}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - container.cpu.usage.total: + container.blockio.io_service_bytes_recursive.write: enabled: true - description: "Total CPU time consumed." - unit: s + description: "Number of bytes transferred to the disk by the container" + extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." + stability: development + unit: "{operations}" sum: value_type: int monotonic: true aggregation_temporality: cumulative + + # CPU + container.cpu.percent: + enabled: true + description: "Percent of CPU used by the container." + stability: development + unit: "1" + gauge: + value_type: double container.cpu.usage.percpu: enabled: true description: "Total CPU time consumed per CPU-core." + stability: development unit: s sum: value_type: int @@ -60,16 +74,36 @@ metrics: aggregation_temporality: cumulative attributes: - core - container.cpu.percent: + container.cpu.usage.system: enabled: true - description: "Percent of CPU used by the container." + description: "System CPU usage." + stability: development + unit: s + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + container.cpu.usage.total: + enabled: true + description: "Total CPU time consumed." + stability: development + unit: s + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + # Memory + container.memory.percent: + enabled: true + description: "Percentage of memory used." + stability: development unit: "1" gauge: value_type: double - # Memory container.memory.usage.limit: enabled: true description: "Memory limit of the container." + stability: development unit: By sum: value_type: int @@ -78,21 +112,17 @@ metrics: container.memory.usage.total: enabled: true description: "Memory usage of the container." + stability: development unit: By sum: value_type: int aggregation_temporality: cumulative monotonic: false - container.memory.percent: - enabled: true - description: "Percentage of memory used." - unit: "1" - gauge: - value_type: double # Network container.network.io.usage.rx_bytes: enabled: true description: "Bytes received by the container." + stability: development unit: By sum: value_type: int @@ -101,30 +131,12 @@ metrics: container.network.io.usage.tx_bytes: enabled: true description: "Bytes sent by the container." + stability: development unit: By sum: value_type: int monotonic: true aggregation_temporality: cumulative - # BlockIO - container.blockio.io_service_bytes_recursive.read: - enabled: true - description: "Number of bytes transferred from the disk by the container" - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{operations}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - container.blockio.io_service_bytes_recursive.write: - enabled: true - description: "Number of bytes transferred to the disk by the container" - extended_documentation: "[More docs](https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt)." - unit: "{operations}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative # TODO: Update the receiver to pass the tests tests: diff --git a/metric-metadata/postgresqlreceiver.yaml b/metric-metadata/postgresqlreceiver.yaml index 5cb21eb..6ebeec8 100644 --- a/metric-metadata/postgresqlreceiver.yaml +++ b/metric-metadata/postgresqlreceiver.yaml @@ -7,7 +7,7 @@ status: development: [logs] distributions: [contrib] codeowners: - active: [antonblock] + active: [antonblock, ishleenk17, Caleb-Hurshman] seeking_new: true emeritus: [djaglowski] @@ -16,6 +16,10 @@ resource_attributes: description: The name of the database. enabled: true type: string + postgresql.index.name: + description: The name of the index on a table. + enabled: true + type: string postgresql.schema.name: description: The schema name. enabled: true @@ -24,8 +28,8 @@ resource_attributes: description: The table name. enabled: true type: string - postgresql.index.name: - description: The name of the index on a table. + service.instance.id: + description: A unique identifier of the PostgreSQL instance in the format host:port (defaults to 'unknown:5432' in case of error in generating this value). enabled: true type: string @@ -53,12 +57,105 @@ attributes: - sync - write name_override: type + db.namespace: + description: The namespace or schema of the database where the query is executed. + type: string + db.query.text: + description: The text of the database query being executed. + type: string + db.system.name: + description: The database management system (DBMS) product as identified by the client instrumentation. + type: string + enum: [postgresql] + function: + description: The name of the function. + type: string lock_type: description: Type of the lockable object. type: string mode: description: Name of the lock mode held or desired by the process. type: string + network.peer.address: + description: IP address of the client connected to this backend. + type: string + network.peer.port: + description: TCP port number that the client is using for communication with this backend. + type: int + operation: + description: The database operation. + type: string + enum: [ins, upd, del, hot_upd] + postgresql.application_name: + description: Name of the application that is connected to this backend. + type: string + postgresql.calls: + description: Number of times the statement was executed, reported in delta value. + type: int + postgresql.client_hostname: + description: Host name of the connected client, as reported by a reverse DNS lookup of client_addr. + type: string + postgresql.pid: + description: Process ID of this backend. + type: int + postgresql.query_id: + description: Identifier of this backend's most recent query. If state is active this field shows the identifier of the currently executing query. In all other states, it shows the identifier of last query that was executed. + type: string + + postgresql.query_plan: + description: The execution plan used by PostgreSQL for the query. + type: string + postgresql.query_start: + description: Time when the currently active query was started, or if state is not active, when the last query was started. + type: string + postgresql.queryid: + description: Hash code to identify identical normalized queries. + type: string + postgresql.rolname: + description: The name of the PostgreSQL role that executed the query. + type: string + postgresql.rows: + description: Total number of rows retrieved or affected by the statement, reported in delta value. + type: int + postgresql.shared_blks_dirtied: + description: Total number of shared blocks dirtied by the statement, reported in delta value. + type: int + postgresql.shared_blks_hit: + description: Total number of shared block cache hits by the statement, reported in delta value. + type: int + postgresql.shared_blks_read: + description: Total number of shared blocks read by the statement, reported in delta value. + type: int + postgresql.shared_blks_written: + description: Total number of shared blocks written by the statement, reported in delta value. + type: int + postgresql.state: + description: Current overall state of this backend + type: string + postgresql.temp_blks_read: + description: Total number of temp blocks read by the statement, reported in delta value. + type: int + postgresql.temp_blks_written: + description: Total number of temp blocks written by the statement, reported in delta value. + type: int + postgresql.total_exec_time: + description: Total time spent executing the statement, in delta milliseconds. + type: double + postgresql.total_plan_time: + description: Total time spent planning the statement, in delta milliseconds. + type: double + postgresql.wait_event: + description: Wait event name if backend is currently waiting, otherwise NULL. + type: string + postgresql.wait_event_type: + description: The type of event for which the backend is waiting, if any; otherwise NULL. + type: string + relation: + description: OID of the relation targeted by the lock, or null if the target is not a relation or part of a relation. + type: string + replication_client: + description: The IP address of the client connected to this backend. If this field is "unix", it indicates either that the client is connected via a Unix socket. + type: string source: description: The block read source type. type: string @@ -71,29 +168,72 @@ attributes: - toast_hit - tidx_read - tidx_hit - operation: - description: The database operation. - type: string - enum: [ins, upd, del, hot_upd] - relation: - description: OID of the relation targeted by the lock, or null if the target is not a relation or part of a relation. - type: string - replication_client: - description: The IP address of the client connected to this backend. If this field is "unix", it indicates either that the client is connected via a Unix socket. - type: string state: description: The tuple (row) state. type: string enum: [dead, live] + user.name: + description: Name of the user logged into this backend. + type: string wal_operation_lag: name_override: operation description: The operation which is responsible for the lag. type: string enum: [flush, replay, write] +events: + db.server.query_sample: + enabled: true + description: query sample + attributes: + - db.system.name + - db.namespace + - db.query.text + - user.name + - postgresql.state + - postgresql.pid + - postgresql.application_name + - network.peer.address + - network.peer.port + - postgresql.client_hostname + - postgresql.query_start + - postgresql.wait_event + - postgresql.wait_event_type + - postgresql.query_id + - postgresql.total_exec_time + db.server.top_query: + enabled: true + description: top query + attributes: + - db.system.name + - db.namespace + - db.query.text + - postgresql.calls + - postgresql.rows + - postgresql.shared_blks_dirtied + - postgresql.shared_blks_hit + - postgresql.shared_blks_read + - postgresql.shared_blks_written + - postgresql.temp_blks_read + - postgresql.temp_blks_written + - postgresql.queryid + - postgresql.rolname + - postgresql.total_exec_time + - postgresql.total_plan_time + - postgresql.query_plan metrics: + postgresql.backends: + enabled: true + description: The number of backends. + stability: development + unit: "1" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative postgresql.bgwriter.buffers.allocated: description: Number of buffers allocated. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -104,6 +244,7 @@ metrics: attributes: - bg_buffer_source description: Number of buffers written. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -114,6 +255,7 @@ metrics: attributes: - bg_checkpoint_type description: The number of checkpoints performed. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -124,6 +266,7 @@ metrics: attributes: - bg_duration_type description: Total time spent writing and syncing files to disk by checkpoints. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -132,15 +275,35 @@ metrics: unit: ms postgresql.bgwriter.maxwritten: description: Number of times the background writer stopped a cleaning scan because it had written too many buffers. + stability: development enabled: true sum: aggregation_temporality: cumulative monotonic: true value_type: int unit: "1" + postgresql.blks_hit: + enabled: false + description: Number of times disk blocks were found already in the buffer cache. + stability: development + unit: "{blks_hit}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + postgresql.blks_read: + enabled: false + description: Number of disk blocks read in this database. + stability: development + unit: "{blks_read}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative postgresql.blocks_read: enabled: true description: The number of blocks read. + stability: development unit: "1" sum: value_type: int @@ -150,13 +313,22 @@ metrics: postgresql.commits: enabled: true description: The number of commits. + stability: development unit: "1" sum: value_type: int monotonic: true aggregation_temporality: cumulative + postgresql.connection.max: + enabled: true + description: Configured maximum number of client connections allowed + stability: development + unit: "{connections}" + gauge: + value_type: int postgresql.database.count: description: Number of user databases. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -166,6 +338,7 @@ metrics: postgresql.database.locks: enabled: false description: The number of database locks. + stability: development unit: "{lock}" gauge: value_type: int @@ -173,36 +346,34 @@ metrics: postgresql.db_size: enabled: true description: The database disk usage. + stability: development unit: By sum: value_type: int monotonic: false aggregation_temporality: cumulative - postgresql.backends: - enabled: true - description: The number of backends. - unit: "1" + postgresql.deadlocks: + enabled: false + description: The number of deadlocks. + stability: development + unit: "{deadlock}" sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - postgresql.connection.max: - enabled: true - description: Configured maximum number of client connections allowed - unit: "{connections}" - gauge: - value_type: int - postgresql.rows: - enabled: true - description: The number of rows in the database. - unit: "1" + postgresql.function.calls: + enabled: false + description: The number of calls made to a function. Requires `track_functions=pl|all` in Postgres config. + stability: development + unit: "{call}" sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - attributes: [state] + attributes: [function] postgresql.index.scans: description: The number of index scans on a table. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -211,6 +382,7 @@ metrics: unit: "{scans}" postgresql.index.size: description: The size of the index on disk. + stability: development enabled: true gauge: value_type: int @@ -218,6 +390,7 @@ metrics: postgresql.operations: enabled: true description: The number of db row operations. + stability: development unit: "1" sum: value_type: int @@ -227,6 +400,7 @@ metrics: postgresql.replication.data_delay: attributes: [replication_client] description: The amount of data delayed in replication. + stability: development enabled: true gauge: value_type: int @@ -234,22 +408,26 @@ metrics: postgresql.rollbacks: enabled: true description: The number of rollbacks. + stability: development unit: "1" sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.deadlocks: - enabled: false - description: The number of deadlocks. - unit: "{deadlock}" + postgresql.rows: + enabled: true + description: The number of rows in the database. + stability: development + unit: "1" sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative + attributes: [state] postgresql.sequential_scans: enabled: false description: The number of sequential scans. + stability: development unit: "{sequential_scan}" sum: value_type: int @@ -257,6 +435,7 @@ metrics: aggregation_temporality: cumulative postgresql.table.count: description: Number of user tables in a database. + stability: development enabled: true sum: aggregation_temporality: cumulative @@ -265,6 +444,7 @@ metrics: unit: "{table}" postgresql.table.size: description: Disk space used by a table. + stability: development enabled: true unit: By sum: @@ -273,58 +453,36 @@ metrics: value_type: int postgresql.table.vacuum.count: description: Number of times a table has manually been vacuumed. + stability: development enabled: true - unit: "{vacuums}" + unit: "{vacuum}" sum: aggregation_temporality: cumulative monotonic: true value_type: int - postgresql.temp_files: + postgresql.temp.io: enabled: false - description: The number of temp files. - unit: "{temp_file}" + description: Total amount of data written to temporary files by queries. + stability: development + unit: By sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.wal.age: - description: Age of the oldest WAL file. - extended_documentation: | - This metric requires WAL to be enabled with at least one replica. - enabled: true - unit: s - gauge: - value_type: int - postgresql.wal.lag: - attributes: [wal_operation_lag, replication_client] - description: Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it. - enabled: true - unit: s - gauge: - value_type: int - extended_documentation: | - This metric requires WAL to be enabled with at least one replica. - postgresql.wal.delay: - attributes: [wal_operation_lag, replication_client] - description: Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it. - enabled: false - unit: s - gauge: - value_type: double - extended_documentation: | - This metric requires WAL to be enabled with at least one replica. - postgresql.tup_updated: + postgresql.temp_files: enabled: false - description: Number of rows updated by queries in the database. - unit: "{tup_updated}" + description: The number of temp files. + stability: development + unit: "{temp_file}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.tup_returned: + postgresql.tup_deleted: enabled: false - description: Number of rows returned by queries in the database. - unit: "{tup_returned}" + description: Number of rows deleted by queries in the database. + stability: development + unit: "{tup_deleted}" sum: value_type: int monotonic: true @@ -332,6 +490,7 @@ metrics: postgresql.tup_fetched: enabled: false description: Number of rows fetched by queries in the database. + stability: development unit: "{tup_fetched}" sum: value_type: int @@ -340,42 +499,68 @@ metrics: postgresql.tup_inserted: enabled: false description: Number of rows inserted by queries in the database. + stability: development unit: "{tup_inserted}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.tup_deleted: + postgresql.tup_returned: enabled: false - description: Number of rows deleted by queries in the database. - unit: "{tup_deleted}" + description: Number of rows returned by queries in the database. + stability: development + unit: "{tup_returned}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.blks_hit: + postgresql.tup_updated: enabled: false - description: Number of times disk blocks were found already in the buffer cache. - unit: "{blks_hit}" + description: Number of rows updated by queries in the database. + stability: development + unit: "{tup_updated}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - postgresql.blks_read: + postgresql.wal.age: + description: Age of the oldest WAL file. + extended_documentation: | + This metric requires WAL to be enabled with at least one replica. + stability: development + enabled: true + unit: s + gauge: + value_type: int + postgresql.wal.delay: + attributes: [wal_operation_lag, replication_client] + description: Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it. + stability: development enabled: false - description: Number of disk blocks read in this database. - unit: "{blks_read}" - sum: + unit: s + gauge: + value_type: double + extended_documentation: | + This metric requires WAL to be enabled with at least one replica. + postgresql.wal.lag: + attributes: [wal_operation_lag, replication_client] + description: Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it. + stability: development + enabled: true + unit: s + gauge: value_type: int - monotonic: true - aggregation_temporality: cumulative + extended_documentation: | + This metric requires WAL to be enabled with at least one replica. + tests: config: goleak: ignore: - any: - - "github.com/godbus/dbus.(*Conn).inWorker" - - github.com/hashicorp/golang-lru/v2/expirable.NewLRU[...].func1 + any: + - "github.com/cihub/seelog.(*asyncLoopLogger).processQueue" # see https://github.com/cihub/seelog/issues/182 + - "github.com/godbus/dbus.(*Conn).inWorker" + - github.com/hashicorp/golang-lru/v2/expirable.NewLRU[...].func1 top: # Can be removed once the following issue is resolved: # https://github.com/snowflakedb/gosnowflake/issues/1369 diff --git a/metric-metadata/pprof.yaml b/metric-metadata/pprof.yaml new file mode 100644 index 0000000..ed07644 --- /dev/null +++ b/metric-metadata/pprof.yaml @@ -0,0 +1,5 @@ +status: + disable_codecov_badge: true + class: "pkg" + codeowners: + active: [ florianl ] diff --git a/metric-metadata/pprofextension.yaml b/metric-metadata/pprofextension.yaml index e5a2e11..74865f1 100644 --- a/metric-metadata/pprofextension.yaml +++ b/metric-metadata/pprofextension.yaml @@ -1,3 +1,4 @@ +display_name: Performance Profiler Extension type: pprof status: diff --git a/metric-metadata/probabilisticsamplerprocessor.yaml b/metric-metadata/probabilisticsamplerprocessor.yaml index 22e489a..4dae57a 100644 --- a/metric-metadata/probabilisticsamplerprocessor.yaml +++ b/metric-metadata/probabilisticsamplerprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Probabilistic Sampling Processor type: probabilistic_sampler status: @@ -16,16 +17,18 @@ tests: telemetry: metrics: - processor_probabilistic_sampler_count_traces_sampled: + processor_probabilistic_sampler_count_logs_sampled: enabled: true - description: Count of traces that were sampled or not + description: Count of logs that were sampled or not + stability: development unit: "1" sum: value_type: int monotonic: true - processor_probabilistic_sampler_count_logs_sampled: + processor_probabilistic_sampler_count_traces_sampled: enabled: true - description: Count of logs that were sampled or not + description: Count of traces that were sampled or not + stability: development unit: "1" sum: value_type: int diff --git a/metric-metadata/processesscraper.yaml b/metric-metadata/processesscraper.yaml index fa4ded6..164e104 100644 --- a/metric-metadata/processesscraper.yaml +++ b/metric-metadata/processesscraper.yaml @@ -17,21 +17,22 @@ attributes: enum: [blocked, daemon, detached, idle, locked, orphan, paging, running, sleeping, stopped, system, unknown, zombies] metrics: - system.processes.created: + system.processes.count: enabled: true - description: Total number of created processes. + description: Total number of processes in each state. unit: "{processes}" + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: true - - system.processes.count: + monotonic: false + attributes: [status] + system.processes.created: enabled: true - description: Total number of processes in each state. + description: Total number of created processes. unit: "{processes}" + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: false - attributes: [status] + monotonic: true diff --git a/metric-metadata/processscraper.yaml b/metric-metadata/processscraper.yaml index aad6b83..4066f0a 100644 --- a/metric-metadata/processscraper.yaml +++ b/metric-metadata/processscraper.yaml @@ -11,27 +11,9 @@ status: sem_conv_version: 1.9.0 resource_attributes: - process.pid: - description: Process identifier (PID). - enabled: true - type: int - process.parent_pid: - description: Parent Process identifier (PPID). - enabled: true - type: int - process.executable.name: - description: >- - The name of the process executable. On Linux based systems, can be set to the - Name in proc/[pid]/status. On Windows, can be set to the base name of - GetProcessImageFileNameW. - enabled: true - type: string - process.executable.path: - description: >- - The full path to the process executable. On Linux based systems, can be set to - the target of proc/[pid]/exe. On Windows, can be set to the result of - GetProcessImageFileNameW. - enabled: true + process.cgroup: + description: cgroup associated with the process (Linux only). + enabled: false type: string process.command: description: >- @@ -48,43 +30,71 @@ resource_attributes: process.command_args instead. enabled: true type: string + process.executable.name: + description: >- + The name of the process executable. On Linux based systems, can be set to the + Name in proc/[pid]/status. On Windows, can be set to the base name of + GetProcessImageFileNameW. + enabled: true + type: string + process.executable.path: + description: >- + The full path to the process executable. On Linux based systems, can be set to + the target of proc/[pid]/exe. On Windows, can be set to the result of + GetProcessImageFileNameW. + enabled: true + type: string process.owner: description: The username of the user that owns the process. enabled: true type: string - process.cgroup: - description: cgroup associated with the process (Linux only). - enabled: false - type: string + process.parent_pid: + description: Parent Process identifier (PPID). + enabled: true + type: int + process.pid: + description: Process identifier (PID). + enabled: true + type: int attributes: + context_switch_type: + name_override: type + description: Type of context switched. + type: string + enum: [involuntary, voluntary] direction: description: Direction of flow of bytes (read or write). type: string enum: [read, write] - state: - description: Breakdown of CPU usage by type. - type: string - enum: [system, user, wait] - paging_fault_type: name_override: type description: Type of memory paging fault. type: string enum: [major, minor] - - context_switch_type: - name_override: type - description: Type of context switched. + state: + description: Breakdown of CPU usage by type. type: string - enum: [involuntary, voluntary] + enum: [system, user, wait] metrics: + process.context_switches: + enabled: false + description: Number of times the process has been context switched. + extended_documentation: This metric is only available on Linux. + unit: '{count}' + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + attributes: [context_switch_type] process.cpu.time: enabled: true description: Total CPU seconds broken down by different states. unit: s + stability: development sum: value_type: double aggregation_temporality: cumulative @@ -98,23 +108,47 @@ metrics: expressed as a value between 0 and 1. On the first scrape, no data point is emitted for this metric. unit: "1" + stability: development gauge: value_type: double attributes: [state] - - process.memory.usage: + process.disk.io: enabled: true - description: The amount of physical memory in use. + description: Disk bytes transferred. unit: By + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + attributes: [direction] + + process.disk.operations: + enabled: false + description: Number of disk operations performed by the process. + unit: "{operations}" + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + attributes: [direction] + process.handles: + enabled: false + description: Number of open handles held by the process. + extended_documentation: This metric is only available on Windows. + unit: '{count}' + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false - process.memory.virtual: + process.memory.usage: enabled: true - description: Virtual memory size. + description: The amount of physical memory in use. unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -124,24 +158,40 @@ metrics: enabled: false description: Percentage of total physical memory that is used by the process. unit: "1" + stability: development gauge: value_type: double - process.disk.io: + process.memory.virtual: enabled: true - description: Disk bytes transferred. + description: Virtual memory size. unit: By + stability: development sum: value_type: int aggregation_temporality: cumulative - monotonic: true - attributes: [direction] + monotonic: false + + process.open_file_descriptors: + enabled: false + description: Number of file descriptors in use by the process. + extended_documentation: >- + On Windows this metric captures the number of open handles currently held + by the process. If you want to capture this data on Windows use the + `process.handles` metric instead to avoid any confusion. + unit: '{count}' + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false process.paging.faults: enabled: false description: Number of page faults the process has made. extended_documentation: This metric is only available on Linux. unit: "{faults}" + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -153,6 +203,7 @@ metrics: description: Number of pending signals for the process. extended_documentation: This metric is only available on Linux. unit: "{signals}" + stability: development sum: value_type: int aggregation_temporality: cumulative @@ -162,58 +213,16 @@ metrics: enabled: false description: Process threads count. unit: "{threads}" + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false - process.open_file_descriptors: - enabled: false - description: Number of file descriptors in use by the process. - extended_documentation: >- - On Windows this metric captures the number of open handles currently held - by the process. If you want to capture this data on Windows use the - `process.handles` metric instead to avoid any confusion. - unit: '{count}' - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - - process.handles: - enabled: false - description: Number of open handles held by the process. - extended_documentation: This metric is only available on Windows. - unit: '{count}' - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - - process.context_switches: - enabled: false - description: Number of times the process has been context switched. - extended_documentation: This metric is only available on Linux. - unit: '{count}' - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - attributes: [context_switch_type] - - process.disk.operations: - enabled: false - description: Number of disk operations performed by the process. - unit: "{operations}" - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: true - attributes: [direction] - process.uptime: enabled: false description: The time the process has been running. unit: s + stability: development gauge: value_type: double diff --git a/metric-metadata/prometheusexporter.yaml b/metric-metadata/prometheusexporter.yaml index 624b14e..50916f7 100644 --- a/metric-metadata/prometheusexporter.yaml +++ b/metric-metadata/prometheusexporter.yaml @@ -1,4 +1,5 @@ type: prometheus +display_name: Prometheus Exporter status: class: exporter @@ -17,4 +18,4 @@ tests: ignore: top: # See https://github.com/census-instrumentation/opencensus-go/issues/1191 for more information. - - "go.opencensus.io/stats/view.(*worker).start" + - "go.opencensus.io/stats/view.(*worker).start" \ No newline at end of file diff --git a/metric-metadata/prometheusreceiver.yaml b/metric-metadata/prometheusreceiver.yaml index 161e5bf..a59c6ec 100644 --- a/metric-metadata/prometheusreceiver.yaml +++ b/metric-metadata/prometheusreceiver.yaml @@ -16,4 +16,60 @@ tests: ignore: top: # See https://github.com/census-instrumentation/opencensus-go/issues/1191 for more information. - - "go.opencensus.io/stats/view.(*worker).start" \ No newline at end of file + - "go.opencensus.io/stats/view.(*worker).start" + +feature_gates: + - id: receiver.prometheusreceiver.EnableCreatedTimestampZeroIngestion + stage: alpha + description: >- + Enables the Prometheus created-timestamps-zero-injection feature. + Created timestamps are injected as 0-valued samples when appropriate. + This is disabled by default due to worse CPU performance with higher metric volumes. + from_version: v0.113.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/40355 + + - id: receiver.prometheusreceiver.EnableNativeHistograms + stage: stable + description: >- + Converts scraped Prometheus native histograms into OpenTelemetry exponential histograms. + You still need to configure 'scrape_native_histograms: true' in your Prometheus scrape + config to actually scrape native histograms. For mixed histograms (both classic and native), + only the native histogram buckets are used. + from_version: v0.142.0 + to_version: v0.145.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/34473 + + - id: receiver.prometheusreceiver.EnableReportExtraScrapeMetrics + stage: alpha + description: >- + Enables reporting of extra Prometheus scrape metrics. This replaces the deprecated + 'report_extra_scrape_metrics' configuration option. + from_version: v0.143.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/44181 + + - id: receiver.prometheusreceiver.RemoveReportExtraScrapeMetricsConfig + stage: beta + description: >- + When enabled, the 'report_extra_scrape_metrics' configuration option is ignored, + and extra scrape metrics are controlled solely by the EnableReportExtraScrapeMetrics + feature gate. The intention is to have extra scrape metrics enabled all the time in the future. + from_version: v0.143.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/44181 + + - id: receiver.prometheusreceiver.RemoveStartTimeAdjustment + stage: stable + description: >- + When enabled, the Prometheus receiver will leave the start time unset. + Use the metricstarttime processor instead if you need this functionality. + from_version: v0.121.0 + to_version: v0.142.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/36364 + + - id: receiver.prometheusreceiver.UseCreatedMetric + stage: deprecated + description: >- + When enabled, the Prometheus receiver will retrieve the start time for + Summary, Histogram and Sum metrics from _created metric. + from_version: v0.89.0 + to_version: v0.141.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/21909 \ No newline at end of file diff --git a/metric-metadata/prometheusremotewriteexporter.yaml b/metric-metadata/prometheusremotewriteexporter.yaml index 576d855..2d1e6f7 100644 --- a/metric-metadata/prometheusremotewriteexporter.yaml +++ b/metric-metadata/prometheusremotewriteexporter.yaml @@ -1,4 +1,5 @@ type: prometheusremotewrite +display_name: Prometheus Remote Write Exporter status: class: exporter @@ -18,36 +19,96 @@ tests: telemetry: metrics: + exporter_prometheusremotewrite_consumers: + enabled: true + stability: development + description: Number of configured workers to use to fan out the outgoing requests + unit: "{consumer}" + sum: + value_type: int + monotonic: false exporter_prometheusremotewrite_failed_translations: enabled: true + stability: development description: Number of translation operations that failed to translate metrics from Otel to Prometheus unit: "1" sum: value_type: int monotonic: true + exporter_prometheusremotewrite_sent_batches: + enabled: true + stability: development + description: Number of remote write request batches sent to the remote write endpoint regardless of success or failure + unit: "{batch}" + sum: + value_type: int + monotonic: true exporter_prometheusremotewrite_translated_time_series: enabled: true + stability: development description: Number of Prometheus time series that were translated from OTel metrics unit: "1" sum: value_type: int monotonic: true - exporter_prometheusremotewrite_consumers: + exporter_prometheusremotewrite_wal_bytes_read: enabled: true - description: Number of configured workers to use to fan out the outgoing requests - unit: "{consumer}" + stability: development + description: Total number of bytes read from the WAL + unit: "By" sum: value_type: int - monotonic: false - exporter_prometheusremotewrite_sent_batches: + monotonic: true + exporter_prometheusremotewrite_wal_bytes_written: enabled: true - description: Number of remote write request batches sent to the remote write endpoint regardless of success or failure - unit: "{batch}" + stability: development + description: Total number of bytes written to the WAL + unit: "By" sum: value_type: int monotonic: true + exporter_prometheusremotewrite_wal_lag: + enabled: true + stability: development + description: WAL lag + unit: "1" + gauge: + value_type: int + exporter_prometheusremotewrite_wal_read_latency: + enabled: true + stability: development + description: Response latency in ms for the WAL reads. + unit: ms + histogram: + value_type: int + bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000] + exporter_prometheusremotewrite_wal_reads: + enabled: true + stability: development + description: Number of WAL reads + unit: "1" + sum: + value_type: int + monotonic: true + exporter_prometheusremotewrite_wal_reads_failures: + enabled: true + stability: development + description: Number of WAL reads that failed + unit: "1" + sum: + value_type: int + monotonic: true + exporter_prometheusremotewrite_wal_write_latency: + enabled: true + stability: development + description: Response latency in ms for the WAL writes. + unit: ms + histogram: + value_type: int + bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000] exporter_prometheusremotewrite_wal_writes: enabled: true + stability: development description: Number of WAL writes unit: "1" sum: @@ -55,22 +116,33 @@ telemetry: monotonic: true exporter_prometheusremotewrite_wal_writes_failures: enabled: true + stability: development description: Number of WAL writes that failed unit: "1" sum: value_type: int monotonic: true - exporter_prometheusremotewrite_wal_reads: + exporter_prometheusremotewrite_written_exemplars: enabled: true - description: Number of WAL reads - unit: "1" + stability: development + description: Number of Prometheus Exemplars that were successfully written to the remote write endpoint (only available when using remote write v2) + unit: "{exemplar}" sum: value_type: int monotonic: true - exporter_prometheusremotewrite_wal_reads_failures: + exporter_prometheusremotewrite_written_histograms: enabled: true - description: Number of WAL reads that failed - unit: "1" + stability: development + description: Number of Prometheus Histograms that were successfully written to the remote write endpoint (only available when using remote write v2) + unit: "{histogram}" + sum: + value_type: int + monotonic: true + exporter_prometheusremotewrite_written_samples: + enabled: true + stability: development + description: Number of Prometheus Samples that were successfully written to the remote write endpoint (only available when using remote write v2) + unit: "{sample}" sum: value_type: int monotonic: true diff --git a/metric-metadata/prometheusremotewritereceiver.yaml b/metric-metadata/prometheusremotewritereceiver.yaml index 6d0bb18..c713f86 100644 --- a/metric-metadata/prometheusremotewritereceiver.yaml +++ b/metric-metadata/prometheusremotewritereceiver.yaml @@ -3,8 +3,8 @@ type: prometheusremotewrite status: class: receiver stability: - development: [metrics] - distributions: [] + alpha: [metrics] + distributions: [contrib] codeowners: active: [dashpole, ArthurSens, perebaj] tests: @@ -13,4 +13,4 @@ tests: ignore: top: # See https://github.com/census-instrumentation/opencensus-go/issues/1191 for more information. - - "go.opencensus.io/stats/view.(*worker).start" \ No newline at end of file + - "go.opencensus.io/stats/view.(*worker).start" diff --git a/metric-metadata/pulsarexporter.yaml b/metric-metadata/pulsarexporter.yaml index 2330509..3bb2bb4 100644 --- a/metric-metadata/pulsarexporter.yaml +++ b/metric-metadata/pulsarexporter.yaml @@ -1,4 +1,5 @@ type: pulsar +display_name: Pulsar Exporter status: class: exporter @@ -6,7 +7,8 @@ status: alpha: [traces, metrics, logs] distributions: [contrib] codeowners: - active: [dmitryax, dao-jun] + active: [dao-jun] + emeritus: [dmitryax] # Update the exporter to pass the tests tests: diff --git a/metric-metadata/pulsarreceiver.yaml b/metric-metadata/pulsarreceiver.yaml index 27db05c..62fed2e 100644 --- a/metric-metadata/pulsarreceiver.yaml +++ b/metric-metadata/pulsarreceiver.yaml @@ -6,7 +6,8 @@ status: alpha: [metrics, traces, logs] distributions: [contrib] codeowners: - active: [dmitryax, dao-jun] + active: [dao-jun] + emeritus: [dmitryax] # TODO: Update the receiver to pass the tests tests: diff --git a/metric-metadata/rabbitmqexporter.yaml b/metric-metadata/rabbitmqexporter.yaml index 01955f5..3461086 100644 --- a/metric-metadata/rabbitmqexporter.yaml +++ b/metric-metadata/rabbitmqexporter.yaml @@ -1,4 +1,5 @@ type: rabbitmq +display_name: RabbitMQ Exporter status: class: exporter diff --git a/metric-metadata/rabbitmqreceiver.yaml b/metric-metadata/rabbitmqreceiver.yaml index 51208f1..240f5d4 100644 --- a/metric-metadata/rabbitmqreceiver.yaml +++ b/metric-metadata/rabbitmqreceiver.yaml @@ -166,14 +166,14 @@ status: emeritus: [cpheps] resource_attributes: - rabbitmq.queue.name: - description: The name of the RabbitMQ queue. - enabled: true - type: string rabbitmq.node.name: description: The name of the RabbitMQ node. enabled: true type: string + rabbitmq.queue.name: + description: The name of the RabbitMQ queue. + enabled: true + type: string rabbitmq.vhost.name: description: The name of the RabbitMQ vHost. enabled: true @@ -187,33 +187,39 @@ attributes: enum: - ready - unacknowledged + metrics: rabbitmq.consumer.count: description: The number of consumers currently reading from the queue. + stability: development unit: "{consumers}" sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: true - rabbitmq.message.delivered: - description: The number of messages delivered to consumers. + rabbitmq.message.acknowledged: + description: The number of messages acknowledged by consumers. + stability: development unit: "{messages}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - rabbitmq.message.published: - description: The number of messages published to a queue. + rabbitmq.message.current: + description: The total number of messages currently in the queue. + stability: development unit: "{messages}" sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int + attributes: [message.state] enabled: true - rabbitmq.message.acknowledged: - description: The number of messages acknowledged by consumers. + rabbitmq.message.delivered: + description: The number of messages delivered to consumers. + stability: development unit: "{messages}" sum: monotonic: true @@ -222,192 +228,188 @@ metrics: enabled: true rabbitmq.message.dropped: description: The number of messages dropped as unroutable. + stability: development unit: "{messages}" sum: monotonic: true aggregation_temporality: cumulative value_type: int enabled: true - rabbitmq.message.current: - description: The total number of messages currently in the queue. + rabbitmq.message.published: + description: The number of messages published to a queue. + stability: development unit: "{messages}" sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int - attributes: [message.state] enabled: true - rabbitmq.node.disk_free: - description: Free disk space on the node. - unit: '{bytes}' + rabbitmq.node.channel_closed: + description: Number of channels closed. + stability: development + unit: '{channels}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.disk_free_limit: - description: Minimum required free disk space before alarm. - unit: '{bytes}' + rabbitmq.node.channel_closed_details.rate: + description: Rate of channels closed. + stability: development + unit: '{channels}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.disk_free_alarm: - description: Whether disk usage has triggered an alarm. - unit: '{status}' + rabbitmq.node.channel_created: + description: Number of channels created. + stability: development + unit: '{channels}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.disk_free_details.rate: - description: Rate of disk usage change. - unit: '{bytes}/s' + rabbitmq.node.channel_created_details.rate: + description: Rate of channels created. + stability: development + unit: '{channels}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.mem_used: - description: The memory used on the node. - unit: '{bytes}' + rabbitmq.node.connection_closed: + description: Number of connections closed. + stability: development + unit: '{connections}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.mem_limit: - description: The memory limit on the node. - unit: '{bytes}' + rabbitmq.node.connection_closed_details.rate: + description: Rate of connections closed. + stability: development + unit: '{connections}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.mem_alarm: - description: Whether memory alarm is triggered. - unit: '{status}' + rabbitmq.node.connection_created: + description: Number of connections created. + stability: development + unit: '{connections}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.mem_used_details.rate: - description: Rate of memory usage change. - unit: '{bytes}/s' + rabbitmq.node.connection_created_details.rate: + description: Rate of connections created. + stability: development + unit: '{connections}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.fd_used: - description: Number of file descriptors used. - unit: '{fd}' - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - enabled: false - rabbitmq.node.fd_total: - description: Maximum number of file descriptors available. - unit: '{fd}' + rabbitmq.node.context_switches: + description: Total number of context switches. + stability: development + unit: '{switches}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.fd_used_details.rate: - description: Rate of file descriptor usage. - unit: '{fd}/s' + rabbitmq.node.context_switches_details.rate: + description: Rate of context switches. + stability: development + unit: '{switches}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.sockets_used: - description: Number of sockets in use. - unit: '{sockets}' + rabbitmq.node.disk_free: + description: Free disk space on the node. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.sockets_total: - description: Maximum allowed sockets. - unit: '{sockets}' + rabbitmq.node.disk_free_alarm: + description: Whether disk usage has triggered an alarm. + stability: development + unit: '{status}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.sockets_used_details.rate: - description: Rate of socket usage. - unit: '{sockets}/s' + rabbitmq.node.disk_free_details.rate: + description: Rate of disk usage change. + stability: development + unit: '{bytes}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.proc_used: - description: Number of Erlang processes in use. - unit: '{processes}' - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - enabled: false - rabbitmq.node.proc_total: - description: Maximum allowed Erlang processes. - unit: '{processes}' + rabbitmq.node.disk_free_limit: + description: Minimum required free disk space before alarm. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.proc_used_details.rate: - description: Rate of process usage. - unit: '{processes}/s' - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: double - enabled: false - rabbitmq.node.uptime: - description: Uptime of the node. - unit: ms + rabbitmq.node.fd_total: + description: Maximum number of file descriptors available. + stability: development + unit: '{fd}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.run_queue: - description: Run queue length of the Erlang scheduler. - unit: '{threads}' + rabbitmq.node.fd_used: + description: Number of file descriptors used. + stability: development + unit: '{fd}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.processors: - description: Number of processors available to the node. - unit: '{processors}' + rabbitmq.node.fd_used_details.rate: + description: Rate of file descriptor usage. + stability: development + unit: '{fd}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.context_switches: - description: Total number of context switches. - unit: '{switches}' + rabbitmq.node.gc_bytes_reclaimed: + description: Bytes reclaimed by garbage collection. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.context_switches_details.rate: - description: Rate of context switches. - unit: '{switches}/s' + rabbitmq.node.gc_bytes_reclaimed_details.rate: + description: Rate of bytes reclaimed by GC. + stability: development + unit: '{bytes}/s' sum: monotonic: false aggregation_temporality: cumulative @@ -415,6 +417,7 @@ metrics: enabled: false rabbitmq.node.gc_num: description: Number of garbage collections. + stability: development unit: '{collections}' sum: monotonic: false @@ -423,87 +426,98 @@ metrics: enabled: false rabbitmq.node.gc_num_details.rate: description: Rate of garbage collections. + stability: development unit: '{collections}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.gc_bytes_reclaimed: - description: Bytes reclaimed by garbage collection. - unit: '{bytes}' - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - enabled: false - rabbitmq.node.gc_bytes_reclaimed_details.rate: - description: Rate of bytes reclaimed by GC. - unit: '{bytes}/s' + rabbitmq.node.io_read_avg_time: + description: Average read time in microseconds. + stability: development + unit: '{microseconds}' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_read_count: - description: Number of read operations. - unit: '{ops}' + rabbitmq.node.io_read_avg_time_details.rate: + description: Rate of change of average read time. + stability: development + unit: '{microseconds}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false rabbitmq.node.io_read_bytes: description: Total bytes read. + stability: development unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.io_read_avg_time: - description: Average read time in microseconds. - unit: '{microseconds}' + rabbitmq.node.io_read_bytes_details.rate: + description: Rate of bytes read. + stability: development + unit: '{bytes}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_write_count: - description: Number of write operations. + rabbitmq.node.io_read_count: + description: Number of read operations. + stability: development unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.io_write_bytes: - description: Total bytes written. - unit: '{bytes}' + rabbitmq.node.io_read_count_details.rate: + description: Rate of read operations. + stability: development + unit: '{ops}/s' + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: double + enabled: false + rabbitmq.node.io_reopen_count: + description: Number of file reopen operations. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.io_write_avg_time: - description: Average write time in microseconds. - unit: '{microseconds}' + rabbitmq.node.io_reopen_count_details.rate: + description: Rate of file reopen operations. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_sync_count: - description: Number of sync operations. - unit: '{ops}' + rabbitmq.node.io_seek_avg_time: + description: Average seek time in microseconds. + stability: development + unit: '{microseconds}' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.io_sync_avg_time: - description: Average sync time in microseconds. - unit: '{microseconds}' + rabbitmq.node.io_seek_avg_time_details.rate: + description: Rate of change of average seek time. + stability: development + unit: '{microseconds}/s' sum: monotonic: false aggregation_temporality: cumulative @@ -511,321 +525,388 @@ metrics: enabled: false rabbitmq.node.io_seek_count: description: Number of seek operations. + stability: development unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.io_seek_avg_time: - description: Average seek time in microseconds. - unit: '{microseconds}' + rabbitmq.node.io_seek_count_details.rate: + description: Rate of seek operations. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_reopen_count: - description: Number of file reopen operations. - unit: '{ops}' + rabbitmq.node.io_sync_avg_time: + description: Average sync time in microseconds. + stability: development + unit: '{microseconds}' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.mnesia_ram_tx_count: - description: Number of RAM transactions in Mnesia. - unit: '{tx}' + rabbitmq.node.io_sync_avg_time_details.rate: + description: Rate of change of average sync time. + stability: development + unit: '{microseconds}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.mnesia_disk_tx_count: - description: Number of disk transactions in Mnesia. - unit: '{tx}' + rabbitmq.node.io_sync_count: + description: Number of sync operations. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.msg_store_read_count: - description: Number of message store reads. - unit: '{ops}' + rabbitmq.node.io_sync_count_details.rate: + description: Rate of sync operations. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.msg_store_write_count: - description: Number of message store writes. - unit: '{ops}' + rabbitmq.node.io_write_avg_time: + description: Average write time in microseconds. + stability: development + unit: '{microseconds}' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.queue_index_write_count: - description: Number of queue index writes. - unit: '{ops}' + rabbitmq.node.io_write_avg_time_details.rate: + description: Rate of change of average write time. + stability: development + unit: '{microseconds}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.queue_index_read_count: - description: Number of queue index reads. - unit: '{ops}' + rabbitmq.node.io_write_bytes: + description: Total bytes written. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.connection_created: - description: Number of connections created. - unit: '{connections}' + rabbitmq.node.io_write_bytes_details.rate: + description: Rate of bytes written. + stability: development + unit: '{bytes}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.connection_closed: - description: Number of connections closed. - unit: '{connections}' + rabbitmq.node.io_write_count: + description: Number of write operations. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.channel_created: - description: Number of channels created. - unit: '{channels}' + rabbitmq.node.io_write_count_details.rate: + description: Rate of write operations. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative - value_type: int + value_type: double enabled: false - rabbitmq.node.channel_closed: - description: Number of channels closed. - unit: '{channels}' + rabbitmq.node.mem_alarm: + description: Whether memory alarm is triggered. + stability: development + unit: '{status}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.queue_declared: - description: Number of queues declared. - unit: '{queues}' + rabbitmq.node.mem_limit: + description: The memory limit on the node. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.queue_created: - description: Number of queues created. - unit: '{queues}' + rabbitmq.node.mem_used: + description: The memory used on the node. + stability: development + unit: '{bytes}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.queue_deleted: - description: Number of queues deleted. - unit: '{queues}' + rabbitmq.node.mem_used_details.rate: + description: Rate of memory usage change. + stability: development + unit: '{bytes}/s' + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: double + enabled: false + rabbitmq.node.mnesia_disk_tx_count: + description: Number of disk transactions in Mnesia. + stability: development + unit: '{tx}' sum: monotonic: false aggregation_temporality: cumulative value_type: int enabled: false - rabbitmq.node.io_read_count_details.rate: - description: Rate of read operations. - unit: '{ops}/s' + rabbitmq.node.mnesia_disk_tx_count_details.rate: + description: Rate of disk transactions in Mnesia. + stability: development + unit: '{tx}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_read_bytes_details.rate: - description: Rate of bytes read. - unit: '{bytes}/s' + rabbitmq.node.mnesia_ram_tx_count: + description: Number of RAM transactions in Mnesia. + stability: development + unit: '{tx}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.io_read_avg_time_details.rate: - description: Rate of change of average read time. - unit: '{microseconds}/s' + rabbitmq.node.mnesia_ram_tx_count_details.rate: + description: Rate of RAM transactions in Mnesia. + stability: development + unit: '{tx}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_write_count_details.rate: - description: Rate of write operations. - unit: '{ops}/s' + rabbitmq.node.msg_store_read_count: + description: Number of message store reads. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.io_write_bytes_details.rate: - description: Rate of bytes written. - unit: '{bytes}/s' + rabbitmq.node.msg_store_read_count_details.rate: + description: Rate of message store reads. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_write_avg_time_details.rate: - description: Rate of change of average write time. - unit: '{microseconds}/s' + rabbitmq.node.msg_store_write_count: + description: Number of message store writes. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.io_sync_count_details.rate: - description: Rate of sync operations. + rabbitmq.node.msg_store_write_count_details.rate: + description: Rate of message store writes. + stability: development unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_sync_avg_time_details.rate: - description: Rate of change of average sync time. - unit: '{microseconds}/s' + rabbitmq.node.proc_total: + description: Maximum allowed Erlang processes. + stability: development + unit: '{processes}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.io_seek_count_details.rate: - description: Rate of seek operations. - unit: '{ops}/s' + rabbitmq.node.proc_used: + description: Number of Erlang processes in use. + stability: development + unit: '{processes}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.io_seek_avg_time_details.rate: - description: Rate of change of average seek time. - unit: '{microseconds}/s' + rabbitmq.node.proc_used_details.rate: + description: Rate of process usage. + stability: development + unit: '{processes}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.io_reopen_count_details.rate: - description: Rate of file reopen operations. - unit: '{ops}/s' + rabbitmq.node.processors: + description: Number of processors available to the node. + stability: development + unit: '{processors}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.mnesia_ram_tx_count_details.rate: - description: Rate of RAM transactions in Mnesia. - unit: '{tx}/s' + rabbitmq.node.queue_created: + description: Number of queues created. + stability: development + unit: '{queues}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.mnesia_disk_tx_count_details.rate: - description: Rate of disk transactions in Mnesia. - unit: '{tx}/s' + rabbitmq.node.queue_created_details.rate: + description: Rate of queues created. + stability: development + unit: '{queues}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.msg_store_read_count_details.rate: - description: Rate of message store reads. - unit: '{ops}/s' + rabbitmq.node.queue_declared: + description: Number of queues declared. + stability: development + unit: '{queues}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.msg_store_write_count_details.rate: - description: Rate of message store writes. - unit: '{ops}/s' + rabbitmq.node.queue_declared_details.rate: + description: Rate of queues declared. + stability: development + unit: '{queues}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.queue_index_write_count_details.rate: - description: Rate of queue index writes. - unit: '{ops}/s' + rabbitmq.node.queue_deleted: + description: Number of queues deleted. + stability: development + unit: '{queues}' + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + enabled: false + rabbitmq.node.queue_deleted_details.rate: + description: Rate of queues deleted. + stability: development + unit: '{queues}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false + rabbitmq.node.queue_index_read_count: + description: Number of queue index reads. + stability: development + unit: '{ops}' + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + enabled: false rabbitmq.node.queue_index_read_count_details.rate: description: Rate of queue index reads. + stability: development unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.connection_created_details.rate: - description: Rate of connections created. - unit: '{connections}/s' + rabbitmq.node.queue_index_write_count: + description: Number of queue index writes. + stability: development + unit: '{ops}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.connection_closed_details.rate: - description: Rate of connections closed. - unit: '{connections}/s' + rabbitmq.node.queue_index_write_count_details.rate: + description: Rate of queue index writes. + stability: development + unit: '{ops}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.channel_created_details.rate: - description: Rate of channels created. - unit: '{channels}/s' + rabbitmq.node.run_queue: + description: Run queue length of the Erlang scheduler. + stability: development + unit: '{threads}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.channel_closed_details.rate: - description: Rate of channels closed. - unit: '{channels}/s' + rabbitmq.node.sockets_total: + description: Maximum allowed sockets. + stability: development + unit: '{sockets}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.queue_declared_details.rate: - description: Rate of queues declared. - unit: '{queues}/s' + rabbitmq.node.sockets_used: + description: Number of sockets in use. + stability: development + unit: '{sockets}' sum: monotonic: false aggregation_temporality: cumulative - value_type: double + value_type: int enabled: false - rabbitmq.node.queue_created_details.rate: - description: Rate of queues created. - unit: '{queues}/s' + rabbitmq.node.sockets_used_details.rate: + description: Rate of socket usage. + stability: development + unit: '{sockets}/s' sum: monotonic: false aggregation_temporality: cumulative value_type: double enabled: false - rabbitmq.node.queue_deleted_details.rate: - description: Rate of queues deleted. - unit: '{queues}/s' + rabbitmq.node.uptime: + description: Uptime of the node. + stability: development + unit: ms sum: monotonic: false aggregation_temporality: cumulative - value_type: double - enabled: false \ No newline at end of file + value_type: int + enabled: false diff --git a/metric-metadata/receivercreator.yaml b/metric-metadata/receivercreator.yaml index c85e249..c8602a1 100644 --- a/metric-metadata/receivercreator.yaml +++ b/metric-metadata/receivercreator.yaml @@ -7,7 +7,7 @@ status: alpha: [logs, traces] distributions: [contrib, k8s] codeowners: - active: [dmitryax] + active: [dmitryax, ChrsMark] emeritus: [rmfitzpatrick] tests: diff --git a/metric-metadata/redactionprocessor.yaml b/metric-metadata/redactionprocessor.yaml index 9e9d558..8cb0d1e 100644 --- a/metric-metadata/redactionprocessor.yaml +++ b/metric-metadata/redactionprocessor.yaml @@ -1,5 +1,12 @@ +display_name: Redaction Processor type: redaction +description: | + This processor deletes span, log, and metric datapoint attributes that don't match a list of allowed + attributes. It also masks attribute values that match a blocked value + list. Attributes that aren't on the allowed list are removed before any + value checks are done. + status: class: processor stability: @@ -7,8 +14,12 @@ status: alpha: [logs,metrics] distributions: [contrib, k8s] codeowners: - active: [dmitryax, mx-psi, TylerHelmuth] + active: [dmitryax, mx-psi, TylerHelmuth, iblancasa] emeritus: [leonsp-ai] tests: config: + goleak: + ignore: + top: + - "sync.runtime_notifyListWait" \ No newline at end of file diff --git a/metric-metadata/redfishreceiver.yaml b/metric-metadata/redfishreceiver.yaml new file mode 100644 index 0000000..53dd7b6 --- /dev/null +++ b/metric-metadata/redfishreceiver.yaml @@ -0,0 +1,178 @@ +type: redfish + +status: + class: receiver + stability: + development: [metrics] + codeowners: + active: [steven-freed] + +resource_attributes: + base_url: + description: base url. + type: string + enabled: true + system.host_name: + description: System host name. + type: string + enabled: true + +attributes: + chassis.asset_tag: + description: Chassis asset tag. + type: string + chassis.chassis_type: + description: Chassis type. + type: string + chassis.id: + description: Chassis id. + type: string + chassis.manufacturer: + description: Chassis manufacturer. + type: string + chassis.model: + description: Chassis model. + type: string + chassis.name: + description: Chassis name. + type: string + chassis.serial_number: + description: Chassis serial number. + type: string + chassis.sku: + description: Chassis sku. + type: string + fan.name: + description: Fan name. + type: string + fan.reading_units: + description: Fan reading units. + type: string + system.asset_tag: + description: System asset tag. + type: string + system.bios_version: + description: System bios version. + type: string + system.id: + description: System id. + type: string + system.manufacturer: + description: System manufacturer. + type: string + system.model: + description: System model. + type: string + system.name: + description: System name. + type: string + system.serial_number: + description: System serial number. + type: string + system.sku: + description: System sku. + type: string + system.system_type: + description: System type. + type: string + temperature.name: + description: Temperature name. + type: string + +metrics: + chassis.powerstate: + description: Measures the power state of a chassis (-1 unknown, 0 off, 1 on). + enabled: true + stability: development + gauge: + value_type: int + unit: "{powerstate}" + attributes: [chassis.id, chassis.asset_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial_number, chassis.sku, chassis.chassis_type] + chassis.status.health: + description: Measures the health of a chassis (-1 unknown, 0 critical, 1 ok, 2 warning). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statushealth}" + attributes: [chassis.id, chassis.asset_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial_number, chassis.sku, chassis.chassis_type] + chassis.status.state: + description: Measures the state of a chassis (-1 unknown, 0 disabled, 1 enabled). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statusstate}" + attributes: [chassis.id, chassis.asset_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial_number, chassis.sku, chassis.chassis_type] + fan.reading: + description: Measures the reading of a chassis fan. + enabled: true + stability: development + gauge: + value_type: int + unit: "{}" + attributes: [chassis.id, fan.name, fan.reading_units] + fan.status.health: + description: Measures the health of a chassis fan (-1 unknown, 0 critical, 1 ok, 2 warning). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statushealth}" + attributes: [chassis.id, fan.name] + fan.status.state: + description: Measures the state of a chassis fan (-1 unknown, 0 disabled, 1 enabled). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statusstate}" + attributes: [chassis.id, fan.name] + system.powerstate: + description: Measures the power state of a system (-1 unknown, 0 off, 1 on). + enabled: true + stability: development + gauge: + value_type: int + unit: "{powerstate}" + attributes: [system.id, system.asset_tag, system.bios_version, system.model, system.name, system.manufacturer, system.serial_number, system.sku, system.system_type] + system.status.health: + description: Measures the health of a system (-1 unknown, 0 critical, 1 ok, 2 warning). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statushealth}" + attributes: [system.id, system.asset_tag, system.bios_version, system.model, system.name, system.manufacturer, system.serial_number, system.sku, system.system_type] + system.status.state: + description: Measures the state of a system (-1 unknown, 0 disabled, 1 enabled). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statusstate}" + attributes: [system.id, system.asset_tag, system.bios_version, system.model, system.name, system.manufacturer, system.serial_number, system.sku, system.system_type] + temperature.reading: + description: Measures the reading of a chassis temperature. + enabled: true + stability: development + gauge: + value_type: int + unit: "°C" + attributes: [chassis.id, temperature.name] + temperature.status.health: + description: Measures the health of a chassis temperature (-1 unknown, 0 critical, 1 ok, 2 warning). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statushealth}" + attributes: [chassis.id, temperature.name] + temperature.status.state: + description: Measures the state of a chassis temperature (-1 unknown, 0 disabled, 1 enabled). + enabled: true + stability: development + gauge: + value_type: int + unit: "{statusstate}" + attributes: [chassis.id, temperature.name] diff --git a/metric-metadata/redisreceiver.yaml b/metric-metadata/redisreceiver.yaml index 7153d9f..c1a0090 100644 --- a/metric-metadata/redisreceiver.yaml +++ b/metric-metadata/redisreceiver.yaml @@ -23,6 +23,38 @@ resource_attributes: type: string attributes: + cluster_state: + description: State of the cluster + type: string + enum: + - ok + - fail + cmd: + description: Redis command name + type: string + db: + description: Redis database identifier + type: string + mode: + description: Redis server mode + type: string + enum: + - cluster + - sentinel + - standalone + percentile: + description: Percentile + type: string + enum: + - p50 + - p99 + - p99.9 + role: + description: Redis node's role + type: string + enum: + - replica + - primary state: description: Redis CPU usage state type: string @@ -41,47 +73,159 @@ attributes: - user - user_children - user_main_thread - db: - description: Redis database identifier - type: string - role: - description: Redis node's role - type: string - enum: - - replica - - primary - cmd: - description: Redis command name - type: string - percentile: - description: Percentile - type: string - enum: - - p50 - - p99 - - p99.9 metrics: - redis.maxmemory: + redis.clients.blocked: + enabled: true + description: Number of clients pending on a blocking call + stability: development + unit: "{client}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + + redis.clients.connected: + enabled: true + description: Number of client connections (excluding connections from replicas) + stability: development + unit: "{client}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + + redis.clients.max_input_buffer: + enabled: true + description: Biggest input buffer among current client connections + stability: development + unit: "By" + gauge: + value_type: int + + redis.clients.max_output_buffer: + enabled: true + description: Longest output list among current client connections + stability: development + unit: "By" + gauge: + value_type: int + + redis.cluster.cluster_enabled: enabled: false - description: The value of the maxmemory configuration directive - unit: By + description: "Indicate Redis cluster is enabled" + stability: development + unit: "1" gauge: value_type: int - redis.role: + redis.cluster.known_nodes: enabled: false - description: Redis node's role - unit: "{role}" + description: "Number of known nodes in the cluster" + stability: development + unit: "{node}" + gauge: + value_type: int + + redis.cluster.links_buffer_limit_exceeded.count: + enabled: false + description: "Total number of times the cluster links buffer limit was exceeded" + stability: development + unit: "{count}" sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative - attributes: [role] + + redis.cluster.node.count: + enabled: false + description: "Number of master nodes in the cluster" + stability: development + unit: "{node}" + gauge: + value_type: int + + redis.cluster.node.uptime: + enabled: false + description: "The node's current epoch" + stability: development + unit: "s" + gauge: + value_type: int + + redis.cluster.slots_assigned: + enabled: false + description: "Number of slots assigned in the cluster" + stability: development + unit: "{slot}" + gauge: + value_type: int + + redis.cluster.slots_fail: + enabled: false + description: "Number of slots in the cluster that are in a failing state" + stability: development + unit: "{slot}" + gauge: + value_type: int + + redis.cluster.slots_ok: + enabled: false + description: "Number of slots in the cluster that are ok" + stability: development + unit: "{slot}" + gauge: + value_type: int + + redis.cluster.slots_pfail: + enabled: false + description: "Number of slots in the cluster that are in a 'potentially failing' state" + stability: development + unit: "{slot}" + gauge: + value_type: int + + redis.cluster.state: + enabled: false + description: "State of the cluster" + stability: development + unit: "{state}" + gauge: + value_type: int + attributes: [cluster_state] + + redis.cluster.stats_messages_received: + enabled: false + description: "Total number of messages received by the cluster" + stability: development + unit: "{message}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + + redis.cluster.stats_messages_sent: + enabled: false + description: "Total number of messages sent by the cluster" + stability: development + unit: "{message}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + + redis.cluster.uptime: + enabled: false + description: "Current epoch of the cluster" + stability: development + unit: "s" + gauge: + value_type: int redis.cmd.calls: enabled: false description: Total number of calls for a command + stability: development unit: "{call}" sum: value_type: int @@ -89,9 +233,19 @@ metrics: aggregation_temporality: cumulative attributes: [cmd] + redis.cmd.latency: + enabled: false + description: Command execution latency + stability: development + unit: s + gauge: + value_type: double + attributes: [cmd, percentile] + redis.cmd.usec: enabled: false description: Total time for all executions of this command + stability: development unit: us sum: value_type: int @@ -99,18 +253,39 @@ metrics: aggregation_temporality: cumulative attributes: [cmd] - redis.cmd.latency: - enabled: false - description: Command execution latency - unit: s + redis.commands: + enabled: true + description: Number of commands processed per second + stability: development + unit: "{ops}/s" gauge: - value_type: double - attributes: [cmd, percentile] + value_type: int - redis.uptime: + redis.commands.processed: enabled: true - description: Number of seconds since Redis server start - unit: s + description: Total number of commands processed by the server + stability: development + unit: "{command}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + + redis.connections.received: + enabled: true + description: Total number of connections accepted by the server + stability: development + unit: "{connection}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + + redis.connections.rejected: + enabled: true + description: Number of connections rejected because of maxclients limit + stability: development + unit: "{connection}" sum: value_type: int monotonic: true @@ -119,6 +294,7 @@ metrics: redis.cpu.time: enabled: true description: System CPU consumed by the Redis server in seconds since server start + stability: development unit: s sum: value_type: double @@ -126,41 +302,47 @@ metrics: aggregation_temporality: cumulative attributes: [state] - redis.clients.connected: + redis.db.avg_ttl: enabled: true - description: Number of client connections (excluding connections from replicas) - unit: "{client}" - sum: + description: "Average keyspace keys TTL" + stability: development + unit: ms + gauge: value_type: int - monotonic: false - aggregation_temporality: cumulative + attributes: [db] - redis.clients.max_input_buffer: + redis.db.expires: enabled: true - description: Biggest input buffer among current client connections - unit: "By" + description: "Number of keyspace keys with an expiration" + stability: development + unit: "{key}" gauge: value_type: int + attributes: [db] - redis.clients.max_output_buffer: + redis.db.keys: enabled: true - description: Longest output list among current client connections - unit: "By" + description: "Number of keyspace keys" + stability: development + unit: "{key}" gauge: value_type: int + attributes: [db] - redis.clients.blocked: + redis.keys.evicted: enabled: true - description: Number of clients pending on a blocking call - unit: "{client}" + description: Number of evicted keys due to maxmemory limit + stability: development + unit: "{key}" sum: value_type: int - monotonic: false + monotonic: true aggregation_temporality: cumulative redis.keys.expired: enabled: true description: Total number of key expiration events + stability: development unit: "{event}" sum: value_type: int @@ -168,43 +350,63 @@ metrics: aggregation_temporality: cumulative - redis.keys.evicted: + redis.keyspace.hits: enabled: true - description: Number of evicted keys due to maxmemory limit - unit: "{key}" + description: Number of successful lookup of keys in the main dictionary + stability: development + unit: "{hit}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - redis.connections.received: + redis.keyspace.misses: enabled: true - description: Total number of connections accepted by the server - unit: "{connection}" + description: Number of failed lookup of keys in the main dictionary + stability: development + unit: "{miss}" sum: value_type: int monotonic: true aggregation_temporality: cumulative - redis.connections.rejected: + + redis.latest_fork: enabled: true - description: Number of connections rejected because of maxclients limit - unit: "{connection}" - sum: + description: Duration of the latest fork operation in microseconds + stability: development + unit: us + gauge: value_type: int - monotonic: true - aggregation_temporality: cumulative - redis.memory.used: + redis.maxmemory: + enabled: false + description: The value of the maxmemory configuration directive + stability: development + unit: By + gauge: + value_type: int + + redis.memory.fragmentation_ratio: enabled: true - description: Total number of bytes allocated by Redis using its allocator + description: Ratio between used_memory_rss and used_memory + stability: development + unit: "1" + gauge: + value_type: double + + redis.memory.lua: + enabled: true + description: Number of bytes used by the Lua engine + stability: development unit: By gauge: - value_type: int + value_type: int redis.memory.peak: enabled: true description: Peak memory consumed by Redis (in bytes) + stability: development unit: By gauge: value_type: int @@ -212,52 +414,52 @@ metrics: redis.memory.rss: enabled: true description: Number of bytes that Redis allocated as seen by the operating system + stability: development unit: By gauge: value_type: int - redis.memory.lua: + redis.memory.used: enabled: true - description: Number of bytes used by the Lua engine + description: Total number of bytes allocated by Redis using its allocator + stability: development unit: By gauge: value_type: int - redis.memory.fragmentation_ratio: - enabled: true - description: Ratio between used_memory_rss and used_memory - unit: "1" - gauge: - value_type: double - - redis.rdb.changes_since_last_save: - enabled: true - description: Number of changes since the last dump - unit: "{change}" + redis.memory.used_memory_overhead: + enabled: false + description: "The sum in bytes of all overheads that the server allocated for managing its internal data structures" + stability: development + unit: By sum: value_type: int monotonic: false aggregation_temporality: cumulative - redis.commands: - enabled: true - description: Number of commands processed per second - unit: "{ops}/s" - gauge: - value_type: int - - redis.commands.processed: - enabled: true - description: Total number of commands processed by the server - unit: "{command}" + redis.memory.used_memory_startup: + enabled: false + description: "Initial amount of memory consumed by Redis at startup in bytes" + stability: development + unit: By sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative + redis.mode: + enabled: false + description: Redis server mode + stability: development + unit: "{mode}" + gauge: + value_type: int + attributes: [mode] + redis.net.input: enabled: true description: The total number of bytes read from the network + stability: development unit: By sum: value_type: int @@ -267,90 +469,138 @@ metrics: redis.net.output: enabled: true description: The total number of bytes written to the network + stability: development unit: By sum: value_type: int monotonic: true aggregation_temporality: cumulative - redis.keyspace.hits: + redis.rdb.changes_since_last_save: enabled: true - description: Number of successful lookup of keys in the main dictionary - unit: "{hit}" + description: Number of changes since the last dump + stability: development + unit: "{change}" sum: value_type: int - monotonic: true + monotonic: false aggregation_temporality: cumulative - redis.keyspace.misses: + redis.replication.backlog_first_byte_offset: enabled: true - description: Number of failed lookup of keys in the main dictionary - unit: "{miss}" - sum: + description: The master offset of the replication backlog buffer + stability: development + unit: "By" + gauge: value_type: int - monotonic: true - aggregation_temporality: cumulative - redis.latest_fork: + redis.replication.offset: enabled: true - description: Duration of the latest fork operation in microseconds - unit: us + description: The server's current replication offset + stability: development + unit: "By" gauge: value_type: int - redis.slaves.connected: - enabled: true - description: Number of connected replicas - unit: "{replica}" + # below are all disabled by default + redis.replication.replica_offset: + enabled: false + description: "Offset for redis replica" + stability: development + unit: "By" + gauge: + value_type: int + + redis.role: + enabled: false + description: Redis node's role + stability: development + unit: "{role}" sum: value_type: int monotonic: false aggregation_temporality: cumulative + attributes: [role] - redis.replication.backlog_first_byte_offset: - enabled: true - description: The master offset of the replication backlog buffer - unit: "By" + redis.sentinel.masters: + enabled: false + description: Number of masters monitored by Sentinel. + stability: development + unit: "{master}" gauge: value_type: int - redis.replication.offset: - enabled: true - description: The server's current replication offset - unit: "By" + redis.sentinel.running_scripts: + enabled: false + description: Number of running Sentinel scripts. + stability: development + unit: "{script}" gauge: value_type: int - redis.db.keys: - enabled: true - description: "Number of keyspace keys" - unit: "{key}" + redis.sentinel.scripts_queue_length: + enabled: false + description: Length of Sentinel scripts queue. + stability: development + unit: "{script}" gauge: value_type: int - attributes: [db] - redis.db.expires: - enabled: true - description: "Number of keyspace keys with an expiration" - unit: "{key}" + redis.sentinel.simulate_failure_flags: + enabled: false + description: Simulated failure flags bitmask. + stability: development + unit: "{flag}" gauge: value_type: int - attributes: [db] - redis.db.avg_ttl: - enabled: true - description: "Average keyspace keys TTL" - unit: ms + redis.sentinel.tilt_since_seconds: + enabled: false + description: Duration in seconds of current TILT, or -1 if not in TILT mode. + stability: development + unit: "s" gauge: value_type: int - attributes: [db] - # below are all disabled by default - redis.replication.replica_offset: + + redis.sentinel.total_tilt: enabled: false - description: "Offset for redis replica" - unit: "By" - gauge: + description: Total TILT occurrences since start. + stability: development + unit: "{event}" + sum: + value_type: int + monotonic: true + aggregation_temporality: cumulative + + redis.slaves.connected: + enabled: true + description: Number of connected replicas + stability: development + unit: "{replica}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + + redis.tracking_total_keys: + enabled: false + description: "Number of keys being tracked by the server" + stability: development + unit: "{key}" + sum: + value_type: int + monotonic: false + aggregation_temporality: cumulative + + redis.uptime: + enabled: true + description: Number of seconds since Redis server start + stability: development + unit: s + sum: value_type: int + monotonic: true + aggregation_temporality: cumulative tests: config: diff --git a/metric-metadata/redisstorageextension.yaml b/metric-metadata/redisstorageextension.yaml index b344f57..a9733eb 100644 --- a/metric-metadata/redisstorageextension.yaml +++ b/metric-metadata/redisstorageextension.yaml @@ -1,5 +1,8 @@ +display_name: Redis Storage Extension type: redis_storage +description: The Redis Storage Extension can persist state to a Redis cluster. + status: class: extension stability: diff --git a/metric-metadata/remotetapextension.yaml b/metric-metadata/remotetapextension.yaml index a5514c3..99142d6 100644 --- a/metric-metadata/remotetapextension.yaml +++ b/metric-metadata/remotetapextension.yaml @@ -1,3 +1,4 @@ +display_name: Remote Tap Extension type: remotetap status: diff --git a/metric-metadata/remotetapprocessor.yaml b/metric-metadata/remotetapprocessor.yaml index dd62839..29d3c24 100644 --- a/metric-metadata/remotetapprocessor.yaml +++ b/metric-metadata/remotetapprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Remote Tap Processor type: remotetap status: diff --git a/metric-metadata/resourcedetectionprocessor.yaml b/metric-metadata/resourcedetectionprocessor.yaml index 9e98d1f..9d74ac4 100644 --- a/metric-metadata/resourcedetectionprocessor.yaml +++ b/metric-metadata/resourcedetectionprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Resource Detection Processor type: resourcedetection status: @@ -8,3 +9,32 @@ status: distributions: [contrib, k8s] codeowners: active: [Aneurysm9, dashpole] + seeking_new: true + +tests: + goleak: + ignore: + any: + - "net/http.(*persistConn).readLoop" + - "net/http.(*persistConn).writeLoop" + - "golang.org/x/net/http2.(*ClientConn).readLoop" + - "golang.org/x/net/http2.(*clientConnReadLoop).run" + - "crypto/tls.(*Conn).readRecordOrCCS" + - "crypto/tls.(*Conn).Read" + +feature_gates: + - id: processor.resourcedetection.propagateerrors + stage: stable + description: >- + When enabled, allows errors returned from resource detectors to propagate + in the Start() method and stop the collector. + from_version: v0.121.0 + to_version: v0.146.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/37961 + - id: processor.resourcedetection.removeGCPFaasID + stage: stable + description: >- + Remove faas.id from the GCP detector. Use faas.instance instead. + from_version: v0.87.0 + to_version: v0.145.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/26486 diff --git a/metric-metadata/resourceprocessor.yaml b/metric-metadata/resourceprocessor.yaml index c3240e9..52baa1b 100644 --- a/metric-metadata/resourceprocessor.yaml +++ b/metric-metadata/resourceprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Resource Processor type: resource status: diff --git a/metric-metadata/riakreceiver.yaml b/metric-metadata/riakreceiver.yaml index 5878fd5..2c5d3aa 100644 --- a/metric-metadata/riakreceiver.yaml +++ b/metric-metadata/riakreceiver.yaml @@ -16,12 +16,6 @@ resource_attributes: type: string attributes: - request: - description: The request operation type. - type: string - enum: - - put - - get operation: description: The operation type for index operations. type: string @@ -29,8 +23,23 @@ attributes: - read - write - delete + request: + description: The request operation type. + type: string + enum: + - put + - get metrics: + riak.memory.limit: + description: The amount of memory allocated to the node. + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + enabled: true + stability: development riak.node.operation.count: description: The number of operations performed by the node. unit: "{operation}" @@ -39,6 +48,7 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true + stability: development attributes: [request] riak.node.operation.time.mean: description: The mean time between request and response for operations performed by the node over the last minute. @@ -46,6 +56,7 @@ metrics: gauge: value_type: int enabled: true + stability: development attributes: [request] riak.node.read_repair.count: description: The number of read repairs performed by the node. @@ -55,14 +66,17 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true - riak.memory.limit: - description: The amount of memory allocated to the node. - unit: By + stability: development + riak.vnode.index.operation.count: + description: The number of index operations performed by vnodes on the node. + unit: "{operation}" sum: monotonic: false aggregation_temporality: cumulative value_type: int + attributes: [operation] enabled: true + stability: development riak.vnode.operation.count: description: The number of operations performed by vnodes on the node. unit: "{operation}" @@ -71,13 +85,5 @@ metrics: aggregation_temporality: cumulative value_type: int enabled: true + stability: development attributes: [request] - riak.vnode.index.operation.count: - description: The number of index operations performed by vnodes on the node. - unit: "{operation}" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - attributes: [operation] - enabled: true diff --git a/metric-metadata/roundrobinconnector.yaml b/metric-metadata/roundrobinconnector.yaml index 438317a..07dc01d 100644 --- a/metric-metadata/roundrobinconnector.yaml +++ b/metric-metadata/roundrobinconnector.yaml @@ -1,4 +1,5 @@ type: roundrobin +display_name: Round-Robin Connector status: class: connector diff --git a/metric-metadata/routingconnector.yaml b/metric-metadata/routingconnector.yaml index d079284..970ba3e 100644 --- a/metric-metadata/routingconnector.yaml +++ b/metric-metadata/routingconnector.yaml @@ -1,4 +1,5 @@ type: routing +display_name: Routing Connector status: class: connector @@ -6,8 +7,8 @@ status: alpha: [traces_to_traces, metrics_to_metrics, logs_to_logs] distributions: [contrib, k8s] codeowners: - active: [mwear] - emeritus: [jpkrohling] + active: [TylerHelmuth, evan-bradley, edmocosta, bogdandrutu] + emeritus: [jpkrohling, mwear] seeking_new: true tests: diff --git a/metric-metadata/saphanareceiver.yaml b/metric-metadata/saphanareceiver.yaml index 7fe6674..8206f0a 100644 --- a/metric-metadata/saphanareceiver.yaml +++ b/metric-metadata/saphanareceiver.yaml @@ -4,7 +4,7 @@ status: class: receiver stability: alpha: [metrics] - distributions: [] + distributions: [contrib] codeowners: active: [dehaansa] @@ -15,201 +15,245 @@ tests: - "github.com/SAP/go-hdb/driver.(*metrics).collect" resource_attributes: - saphana.host: - type: string - description: The SAP HANA host. - enabled: true db.system: type: string description: The type of database system. enabled: true + saphana.host: + type: string + description: The SAP HANA host. + enabled: true attributes: - database: - description: The SAP HANA database. - type: string - system: - description: The SAP HANA system. - type: string - product: - description: The SAP HANA product. - type: string - primary_host: - name_override: primary - description: The primary SAP HANA host in replication. + active_pending_request_state: + name_override: state + description: The state of network request. type: string - secondary_host: - name_override: secondary - description: The secondary SAP HANA host in replication. + enum: + - active + - pending + alert_rating: + name_override: rating + description: The alert rating. type: string - port: - description: The SAP HANA port. + column_memory_subtype: + name_override: subtype + description: The subtype of column store memory. type: string - replication_mode: - name_override: mode - description: The replication mode. + enum: + - data + - dict + - index + - misc + column_memory_type: + name_override: type + description: The type of column store memory. type: string + enum: + - main + - delta component: description: The SAP HANA component. type: string - schema: - description: The SAP HANA schema. - type: string - service: - description: The SAP HANA service. - type: string - path: - description: The SAP HANA disk path. - type: string - disk_usage_type: - name_override: usage_type - description: The SAP HANA disk & volume usage type. - type: string - transaction_type: - name_override: type - description: The transaction type. - type: string - enum: - - update - - commit - - rollback connection_status: name_override: status description: The connection status. type: string enum: - - running - - idle - - queueing + - running + - idle + - queueing cpu_type: name_override: type description: The type of cpu. type: string enum: - - user - - system - - io_wait - - idle - alert_rating: - name_override: rating - description: The alert rating. + - user + - system + - io_wait + - idle + database: + description: The SAP HANA database. type: string - column_memory_type: + disk_state_used_free: + name_override: state + description: The state of the disk storage. + type: string + enum: + - used + - free + disk_usage_type: + name_override: usage_type + description: The SAP HANA disk & volume usage type. + type: string + host_swap_state: + name_override: state + description: The state of swap data. + type: string + enum: + - used + - free + internal_external_request_type: name_override: type - description: The type of column store memory. + description: The type of network request. type: string enum: - - main - - delta - column_memory_subtype: - name_override: subtype - description: The subtype of column store memory. + - internal + - external + + memory_state_used_free: + name_override: state + description: The state of memory. type: string enum: - - data - - dict - - index - - misc + - used + - free + path: + description: The SAP HANA disk path. + type: string + port: + description: The SAP HANA port. + type: string + primary_host: + name_override: primary + description: The primary SAP HANA host in replication. + type: string + product: + description: The SAP HANA product. + type: string + replication_mode: + name_override: mode + description: The replication mode. + type: string row_memory_type: name_override: type description: The type of row store memory. type: string enum: - - fixed - - variable + - fixed + - variable + schema: + description: The SAP HANA schema. + type: string schema_memory_type: name_override: type description: The type of schema memory. type: string enum: - - main - - delta - - history_main - - history_delta - schema_record_type: + - main + - delta + - history_main + - history_delta + schema_operation_type: name_override: type - description: The type of schema record. + description: The type of operation. type: string enum: - - main - - delta - - history_main - - history_delta - memory_state_used_free: - name_override: state - description: The state of memory. + - read + - write + - merge + schema_record_type: + name_override: type + description: The type of schema record. type: string enum: - - used - - free - disk_state_used_free: - name_override: state - description: The state of the disk storage. + - main + - delta + - history_main + - history_delta + secondary_host: + name_override: secondary + description: The secondary SAP HANA host in replication. type: string - enum: - - used - - free - host_swap_state: - name_override: state - description: The state of swap data. + service: + description: The SAP HANA service. type: string - enum: - - used - - free - schema_operation_type: + service_memory_used_type: name_override: type - description: The type of operation. + description: The type of service memory. type: string enum: - - read - - write - - merge + - logical + - physical service_status: name_override: status description: The status of services. type: string enum: - - active - - inactive + - active + - inactive + system: + description: The SAP HANA system. + type: string thread_status: name_override: status description: The status of threads. type: string enum: - - active - - inactive - service_memory_used_type: + - active + - inactive + transaction_type: name_override: type - description: The type of service memory. + description: The transaction type. type: string enum: - - logical - - physical + - update + - commit + - rollback volume_operation_type: name_override: type description: The type of operation. type: string enum: - - read - - write - active_pending_request_state: - name_override: state - description: The state of network request. - type: string - enum: - - active - - pending - internal_external_request_type: - name_override: type - description: The type of network request. - type: string - enum: - - internal - - external + - read + - write metrics: + saphana.alert.count: + description: Number of current alerts. + stability: development + unit: '{alerts}' + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [alert_rating] + enabled: true + saphana.backup.latest: + description: The age of the latest backup by start time. + stability: development + unit: s + gauge: + value_type: int + input_type: string + attributes: [] + enabled: true + saphana.column.memory.used: + description: The memory used in all columns. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [column_memory_type, column_memory_subtype] + enabled: true + saphana.component.memory.used: + description: The memory used in components. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [component] + enabled: true saphana.connection.count: description: The number of current connections. + stability: development unit: '{connections}' sum: monotonic: false @@ -220,6 +264,7 @@ metrics: enabled: true saphana.cpu.used: description: Total CPU time spent. + stability: development unit: ms sum: monotonic: true @@ -228,75 +273,76 @@ metrics: input_type: string attributes: [cpu_type] enabled: true - saphana.alert.count: - description: Number of current alerts. - unit: '{alerts}' + saphana.disk.size.current: + description: The disk size. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [alert_rating] + attributes: [path, disk_usage_type, disk_state_used_free] enabled: true - saphana.uptime: - description: The uptime of the database. - unit: s + saphana.host.memory.current: + description: The amount of physical memory on the host. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [system, database] + attributes: [memory_state_used_free] enabled: true - saphana.replication.backlog.time: - description: The current replication backlog. - unit: us + saphana.host.swap.current: + description: The amount of swap space on the host. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [primary_host, secondary_host, port, replication_mode] + attributes: [host_swap_state] enabled: true - saphana.replication.backlog.size: - description: The current replication backlog size. + saphana.instance.code_size: + description: The instance code size, including shared libraries of SAP HANA processes. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [primary_host, secondary_host, port, replication_mode] - enabled: true - saphana.replication.average_time: - description: The average amount of time consumed replicating a log. - unit: us - gauge: - value_type: double - input_type: string - attributes: [primary_host, secondary_host, port, replication_mode] + attributes: [] enabled: true - saphana.backup.latest: - description: The age of the latest backup by start time. - unit: s - gauge: + saphana.instance.memory.current: + description: The size of the memory pool for all SAP HANA processes. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] + attributes: [memory_state_used_free] enabled: true - saphana.transaction.count: - description: The number of transactions. - unit: '{transactions}' + saphana.instance.memory.shared.allocated: + description: The shared memory size of SAP HANA processes. + stability: development + unit: By sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [transaction_type] + attributes: [] enabled: true - saphana.transaction.blocked: - description: The number of transactions waiting for a lock. - unit: '{transactions}' + saphana.instance.memory.used.peak: + description: The peak memory from the memory pool used by SAP HANA processes since the instance started (this is a sample-based value). + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative @@ -306,6 +352,7 @@ metrics: enabled: true saphana.license.expiration.time: description: The amount of time remaining before license expiration. + stability: development unit: s gauge: value_type: int @@ -314,6 +361,7 @@ metrics: enabled: true saphana.license.limit: description: The allowed product usage as specified by the license (for example, main memory). + stability: development unit: '{licenses}' sum: monotonic: false @@ -324,6 +372,7 @@ metrics: enabled: true saphana.license.peak: description: The peak product usage value during last 13 months, measured periodically. + stability: development unit: '{licenses}' sum: monotonic: false @@ -332,78 +381,71 @@ metrics: input_type: string attributes: [system, product] enabled: true - saphana.instance.memory.current: - description: The size of the memory pool for all SAP HANA processes. - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - input_type: string - attributes: [memory_state_used_free] - enabled: true - saphana.instance.memory.used.peak: - description: The peak memory from the memory pool used by SAP HANA processes since the instance started (this is a sample-based value). - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int + saphana.network.request.average_time: + description: The average response time calculated over recent requests + stability: development + unit: ms + gauge: + value_type: double input_type: string attributes: [] enabled: true - saphana.instance.code_size: - description: The instance code size, including shared libraries of SAP HANA processes. - unit: By + saphana.network.request.count: + description: The number of active and pending service requests. + stability: development + unit: '{requests}' sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] + attributes: [active_pending_request_state] enabled: true - saphana.instance.memory.shared.allocated: - description: The shared memory size of SAP HANA processes. - unit: By + saphana.network.request.finished.count: + description: The number of service requests that have completed. + stability: development + unit: '{requests}' sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [] + attributes: [internal_external_request_type] enabled: true - saphana.host.memory.current: - description: The amount of physical memory on the host. - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int + saphana.replication.average_time: + description: The average amount of time consumed replicating a log. + stability: development + unit: us + gauge: + value_type: double input_type: string - attributes: [memory_state_used_free] + attributes: [primary_host, secondary_host, port, replication_mode] enabled: true - saphana.host.swap.current: - description: The amount of swap space on the host. + saphana.replication.backlog.size: + description: The current replication backlog size. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [host_swap_state] + attributes: [primary_host, secondary_host, port, replication_mode] enabled: true - saphana.column.memory.used: - description: The memory used in all columns. - unit: By + saphana.replication.backlog.time: + description: The current replication backlog. + stability: development + unit: us sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [column_memory_type, column_memory_subtype] + attributes: [primary_host, secondary_host, port, replication_mode] enabled: true saphana.row_store.memory.used: description: The used memory for all row tables. + stability: development unit: By sum: monotonic: false @@ -412,18 +454,9 @@ metrics: input_type: string attributes: [row_memory_type] enabled: true - saphana.component.memory.used: - description: The memory used in components. - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - input_type: string - attributes: [component] - enabled: true saphana.schema.memory.used.current: description: The memory size for all tables in schema. + stability: development unit: By sum: monotonic: false @@ -434,6 +467,7 @@ metrics: enabled: true saphana.schema.memory.used.max: description: The estimated maximum memory consumption for all fully loaded tables in schema (data for open transactions is not included). + stability: development unit: By sum: monotonic: false @@ -442,18 +476,20 @@ metrics: input_type: string attributes: [schema] enabled: true - saphana.schema.record.count: - description: The number of records for all tables in schema. - unit: '{records}' + saphana.schema.operation.count: + description: The number of operations done on all tables in schema. + stability: development + unit: '{operations}' sum: - monotonic: false + monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [schema, schema_record_type] + attributes: [schema, schema_operation_type] enabled: true saphana.schema.record.compressed.count: description: The number of entries in main during the last optimize compression run for all tables in schema. + stability: development unit: '{records}' sum: monotonic: false @@ -462,48 +498,53 @@ metrics: input_type: string attributes: [schema] enabled: true - saphana.schema.operation.count: - description: The number of operations done on all tables in schema. - unit: '{operations}' + saphana.schema.record.count: + description: The number of records for all tables in schema. + stability: development + unit: '{records}' sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [schema, schema_operation_type] + attributes: [schema, schema_record_type] enabled: true - saphana.service.count: - description: The number of services in a given status. - unit: '{services}' + saphana.service.code_size: + description: The service code size, including shared libraries. + stability: development + unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [service_status] + attributes: [service] enabled: true - saphana.service.thread.count: - description: The number of service threads in a given status. - unit: '{threads}' + saphana.service.count: + description: The number of services in a given status. + stability: development + unit: '{services}' sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [thread_status] + attributes: [service_status] enabled: true - saphana.service.memory.used: - description: The used memory from the operating system perspective. + saphana.service.memory.compactors.allocated: + description: The part of the memory pool that can potentially (if unpinned) be freed during a memory shortage. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [service, service_memory_used_type] + attributes: [service] enabled: true - saphana.service.code_size: - description: The service code size, including shared libraries. + saphana.service.memory.compactors.freeable: + description: The memory that can be freed during a memory shortage. + stability: development unit: By sum: monotonic: false @@ -512,8 +553,9 @@ metrics: input_type: string attributes: [service] enabled: true - saphana.service.stack_size: - description: The service stack size. + saphana.service.memory.effective_limit: + description: The effective maximum memory pool size, calculated considering the pool sizes of other processes. + stability: development unit: By sum: monotonic: false @@ -524,6 +566,7 @@ metrics: enabled: true saphana.service.memory.heap.current: description: The size of the heap portion of the memory pool. + stability: development unit: By sum: monotonic: false @@ -532,8 +575,20 @@ metrics: input_type: string attributes: [service, memory_state_used_free] enabled: true + saphana.service.memory.limit: + description: The configured maximum memory pool size. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [service] + enabled: true saphana.service.memory.shared.current: description: The size of the shared portion of the memory pool. + stability: development unit: By sum: monotonic: false @@ -542,18 +597,20 @@ metrics: input_type: string attributes: [service, memory_state_used_free] enabled: true - saphana.service.memory.compactors.allocated: - description: The part of the memory pool that can potentially (if unpinned) be freed during a memory shortage. + saphana.service.memory.used: + description: The used memory from the operating system perspective. + stability: development unit: By sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [service] + attributes: [service, service_memory_used_type] enabled: true - saphana.service.memory.compactors.freeable: - description: The memory that can be freed during a memory shortage. + saphana.service.stack_size: + description: The service stack size. + stability: development unit: By sum: monotonic: false @@ -562,38 +619,53 @@ metrics: input_type: string attributes: [service] enabled: true - saphana.service.memory.limit: - description: The configured maximum memory pool size. - unit: By + saphana.service.thread.count: + description: The number of service threads in a given status. + stability: development + unit: '{threads}' sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [service] + attributes: [thread_status] enabled: true - saphana.service.memory.effective_limit: - description: The effective maximum memory pool size, calculated considering the pool sizes of other processes. - unit: By + saphana.transaction.blocked: + description: The number of transactions waiting for a lock. + stability: development + unit: '{transactions}' sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [service] + attributes: [] enabled: true - saphana.disk.size.current: - description: The disk size. - unit: By + saphana.transaction.count: + description: The number of transactions. + stability: development + unit: '{transactions}' + sum: + monotonic: true + aggregation_temporality: cumulative + value_type: int + input_type: string + attributes: [transaction_type] + enabled: true + saphana.uptime: + description: The uptime of the database. + stability: development + unit: s sum: monotonic: false aggregation_temporality: cumulative value_type: int input_type: string - attributes: [path, disk_usage_type, disk_state_used_free] + attributes: [system, database] enabled: true saphana.volume.operation.count: description: The number of operations executed. + stability: development unit: '{operations}' sum: monotonic: true @@ -604,6 +676,7 @@ metrics: enabled: true saphana.volume.operation.size: description: The size of operations executed. + stability: development unit: By sum: monotonic: true @@ -614,6 +687,7 @@ metrics: enabled: true saphana.volume.operation.time: description: The time spent executing operations. + stability: development unit: ms sum: monotonic: true @@ -622,31 +696,3 @@ metrics: input_type: string attributes: [path, disk_usage_type, volume_operation_type] enabled: true - saphana.network.request.count: - description: The number of active and pending service requests. - unit: '{requests}' - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - input_type: string - attributes: [active_pending_request_state] - enabled: true - saphana.network.request.finished.count: - description: The number of service requests that have completed. - unit: '{requests}' - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - input_type: string - attributes: [internal_external_request_type] - enabled: true - saphana.network.request.average_time: - description: The average response time calculated over recent requests - unit: ms - gauge: - value_type: double - input_type: string - attributes: [] - enabled: true diff --git a/metric-metadata/sapmexporter.yaml b/metric-metadata/sapmexporter.yaml index 022e57b..3622b90 100644 --- a/metric-metadata/sapmexporter.yaml +++ b/metric-metadata/sapmexporter.yaml @@ -1,4 +1,5 @@ type: sapm +display_name: SAPM Exporter status: class: exporter diff --git a/metric-metadata/scaleway.yaml b/metric-metadata/scaleway.yaml new file mode 100644 index 0000000..c50454f --- /dev/null +++ b/metric-metadata/scaleway.yaml @@ -0,0 +1,54 @@ +type: scalewaydetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [Aneurysm9, dashpole, paulojmdias] + +resource_attributes: + cloud.account.id: + description: The cloud account id + type: string + enabled: true + cloud.availability_zone: + description: The cloud availability zone + type: string + enabled: true + cloud.platform: + description: The cloud platform + enabled: true + type: string + cloud.provider: + description: The cloud provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.image.id: + description: The host image id + type: string + enabled: true + host.image.name: + description: The host image name + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + host.type: + description: The host instance type + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/schemagen.yaml b/metric-metadata/schemagen.yaml new file mode 100644 index 0000000..6a04761 --- /dev/null +++ b/metric-metadata/schemagen.yaml @@ -0,0 +1,7 @@ +type: schemagen + +status: + disable_codecov_badge: true + class: cmd + codeowners: + active: [] diff --git a/metric-metadata/schemaprocessor.yaml b/metric-metadata/schemaprocessor.yaml index dc0962c..7e33668 100644 --- a/metric-metadata/schemaprocessor.yaml +++ b/metric-metadata/schemaprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Schema Processor type: schema status: diff --git a/metric-metadata/sematextexporter.yaml b/metric-metadata/sematextexporter.yaml index 2d139a8..6b5dd05 100644 --- a/metric-metadata/sematextexporter.yaml +++ b/metric-metadata/sematextexporter.yaml @@ -1,4 +1,5 @@ type: sematext +display_name: Sematext Exporter status: class: exporter diff --git a/metric-metadata/sentryexporter.yaml b/metric-metadata/sentryexporter.yaml index c9cfb5d..9517bba 100644 --- a/metric-metadata/sentryexporter.yaml +++ b/metric-metadata/sentryexporter.yaml @@ -1,13 +1,18 @@ type: sentry +display_name: Sentry Exporter status: class: exporter stability: - beta: [traces] + alpha: [traces, logs] distributions: [contrib] codeowners: active: [AbhiPrasad] tests: - expect_consumer_error: true \ No newline at end of file + expect_consumer_error: true + config: + url: https://sentry.io + org_slug: example-org + auth_token: test-token \ No newline at end of file diff --git a/metric-metadata/servicegraphconnector.yaml b/metric-metadata/servicegraphconnector.yaml index 98a16f3..eaf5fdc 100644 --- a/metric-metadata/servicegraphconnector.yaml +++ b/metric-metadata/servicegraphconnector.yaml @@ -1,4 +1,5 @@ type: servicegraph +display_name: Service Graph Connector status: class: connector @@ -17,21 +18,23 @@ telemetry: description: Number of spans dropped when trying to add edges unit: "1" enabled: true + stability: development sum: value_type: int monotonic: true - connector_servicegraph_total_edges: - description: Total number of unique edges + connector_servicegraph_expired_edges: + description: Number of edges that expired before finding its matching span unit: "1" enabled: true + stability: development sum: value_type: int monotonic: true - connector_servicegraph_expired_edges: - description: Number of edges that expired before finding its matching span + connector_servicegraph_total_edges: + description: Total number of unique edges unit: "1" enabled: true + stability: development sum: value_type: int monotonic: true - diff --git a/metric-metadata/signalfxexporter.yaml b/metric-metadata/signalfxexporter.yaml index 8b95a12..970e2a8 100644 --- a/metric-metadata/signalfxexporter.yaml +++ b/metric-metadata/signalfxexporter.yaml @@ -1,4 +1,5 @@ type: signalfx +display_name: SignalFx Exporter status: class: exporter diff --git a/metric-metadata/signalfxreceiver.yaml b/metric-metadata/signalfxreceiver.yaml index 6554986..9929581 100644 --- a/metric-metadata/signalfxreceiver.yaml +++ b/metric-metadata/signalfxreceiver.yaml @@ -3,7 +3,14 @@ type: signalfx status: class: receiver stability: - beta: [metrics, logs] + deprecated: [metrics, logs] + deprecation: + logs: + migration: "Use the OTLP receiver instead. This component will be removed in a future release." + date: "2026-02-13" + metrics: + migration: "Use the OTLP receiver instead. This component will be removed in a future release." + date: "2026-02-13" distributions: [contrib] codeowners: active: ["dmitryax"] diff --git a/metric-metadata/signaltometricsconnector.yaml b/metric-metadata/signaltometricsconnector.yaml index c3a7d9d..7e6f6c1 100644 --- a/metric-metadata/signaltometricsconnector.yaml +++ b/metric-metadata/signaltometricsconnector.yaml @@ -1,9 +1,17 @@ -type: signaltometrics +type: signal_to_metrics +display_name: Signal to Metrics Connector +description: Signal to metrics connector produces metrics from all signal types (traces, logs, or metrics). status: class: connector stability: - alpha: [traces_to_metrics, logs_to_metrics, metrics_to_metrics, profiles_to_metrics] + alpha: + [ + traces_to_metrics, + logs_to_metrics, + metrics_to_metrics, + profiles_to_metrics, + ] distributions: [contrib] codeowners: active: [ChrsMark, lahsivjar] diff --git a/metric-metadata/sigv4authextension.yaml b/metric-metadata/sigv4authextension.yaml index fadb221..a9fcba5 100644 --- a/metric-metadata/sigv4authextension.yaml +++ b/metric-metadata/sigv4authextension.yaml @@ -1,5 +1,12 @@ +display_name: SigV4 Authenticator Extension type: sigv4auth + +description: | + This extension provides Sigv4 authentication for making requests to AWS services. You can read about the + [Sigv4 process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). + + status: class: extension stability: diff --git a/metric-metadata/skywalkingencodingextension.yaml b/metric-metadata/skywalkingencodingextension.yaml index 125635e..d061af1 100644 --- a/metric-metadata/skywalkingencodingextension.yaml +++ b/metric-metadata/skywalkingencodingextension.yaml @@ -1,11 +1,16 @@ +display_name: Skywalking Encoding Extension type: skywalking_encoding +description: > + The `Skywalking` encoding extension is used to unmarshal Apache Skywalking segment traces. Marshalling is not + supported. + status: disable_codecov_badge: true class: extension stability: alpha: [extension] - distributions: [] + distributions: [contrib] codeowners: active: [JaredTan95] diff --git a/metric-metadata/slowsqlconnector.yaml b/metric-metadata/slowsqlconnector.yaml new file mode 100644 index 0000000..3c1da5e --- /dev/null +++ b/metric-metadata/slowsqlconnector.yaml @@ -0,0 +1,12 @@ +type: slowsql +display_name: Slow SQL Connector + +status: + class: connector + stability: + development: [traces_to_logs] + codeowners: + active: [JaredTan95, Frapschen, atoulme] + +tests: + config: \ No newline at end of file diff --git a/metric-metadata/snmpreceiver.yaml b/metric-metadata/snmpreceiver.yaml index 9ec5764..dbf628c 100644 --- a/metric-metadata/snmpreceiver.yaml +++ b/metric-metadata/snmpreceiver.yaml @@ -6,7 +6,8 @@ status: alpha: [metrics] distributions: [contrib] codeowners: - active: [StefanKurek, tamir-michaeli] + active: [tamir-michaeli] + emeritus: [StefanKurek] tests: config: diff --git a/metric-metadata/snowflakereceiver.yaml b/metric-metadata/snowflakereceiver.yaml index 996215b..335827a 100644 --- a/metric-metadata/snowflakereceiver.yaml +++ b/metric-metadata/snowflakereceiver.yaml @@ -8,6 +8,8 @@ status: codeowners: active: [dmitryax, shalper2] +reaggregation_enabled: true + # every meter will have these attributes resource_attributes: snowflake.account.name: @@ -16,49 +18,61 @@ resource_attributes: type: string attributes: - service_type: - description: Service type associated with metric query. + database_name: + description: Name of database being queried (default is snowflake). type: string + requirement_level: recommended error_message: description: Error message reported by query if present. - type: string - reported_client_type: - description: Client type used for attempt. type: string + requirement_level: recommended + execution_status: + description: Execution status of query being reported. + type: string + requirement_level: recommended is_success: description: Login status (success or failure). type: string - schema_name: - description: Name of schema associated with query result. - type: string - execution_status: - description: Execution status of query being reported. + requirement_level: recommended + pipe_name: + description: Name of snowpipe. type: string + requirement_level: recommended query_type: description: Type of query performed. type: string - database_name: - description: Name of database being queried (default is snowflake). + requirement_level: recommended + reported_client_type: + description: Client type used for attempt. type: string - warehouse_size: - description: Size of warehouse being reported on. + requirement_level: recommended + schema_name: + description: Name of schema associated with query result. type: string - pipe_name: - description: Name of snowpipe. + requirement_level: recommended + service_type: + description: Service type associated with metric query. + type: string + requirement_level: recommended + user_name: + description: Username in query being reported. type: string + requirement_level: recommended warehouse_name: description: Name of warehouse in query being reported on. type: string - user_name: - description: Username in query being reported. + requirement_level: recommended + warehouse_size: + description: Size of warehouse being reported on. type: string - + requirement_level: recommended # sql query associated with each group of metrics included metrics: # Billing Metrics snowflake.billing.cloud_service.total: description: Reported total credits used in the cloud service over the last 24 hour window. + stability: development unit: "{credits}" gauge: value_type: double @@ -66,6 +80,7 @@ metrics: attributes: [service_type] snowflake.billing.total_credit.total: description: Reported total credits used across account over the last 24 hour window. + stability: development unit: "{credits}" gauge: value_type: double @@ -73,6 +88,7 @@ metrics: attributes: [service_type] snowflake.billing.virtual_warehouse.total: description: Reported total credits used by virtual warehouse service over the last 24 hour window. + stability: development unit: "{credits}" attributes: [service_type] gauge: @@ -82,96 +98,94 @@ metrics: # Warehouse Billing Metrics snowflake.billing.warehouse.cloud_service.total: description: Credits used across cloud service for given warehouse over the last 24 hour window. + stability: development unit: "{credits}" - gauge: + gauge: value_type: double enabled: false attributes: [warehouse_name] snowflake.billing.warehouse.total_credit.total: description: Total credits used associated with given warehouse over the last 24 hour window. + stability: development unit: "{credits}" - gauge: + gauge: value_type: double enabled: false attributes: [warehouse_name] snowflake.billing.warehouse.virtual_warehouse.total: description: Total credits used by virtual warehouse service for given warehouse over the last 24 hour window. + stability: development unit: "{credits}" gauge: value_type: double enabled: false attributes: [warehouse_name] - - # Login (Security) metrics - snowflake.logins.total: - description: Total login attempts for account over the last 24 hour window. - unit: "1" - gauge: - value_type: int - enabled: false - attributes: [error_message, reported_client_type, is_success] - - # High level low dimensionality query metrics - snowflake.query.blocked: - description: Blocked query count for warehouse over the last 24 hour window. - unit: "1" - gauge: - value_type: double - enabled: true - attributes: [warehouse_name] - snowflake.query.executed: - description: Executed query count for warehouse over the last 24 hour window. - unit: "1" - gauge: - value_type: double - enabled: true - attributes: [warehouse_name] - snowflake.query.queued_overload: - description: Overloaded query count for warehouse over the last 24 hour window. - unit: "1" + snowflake.database.bytes_scanned.avg: + description: Average bytes scanned in a database over the last 24 hour window. + stability: development + unit: By gauge: value_type: double - enabled: true - attributes: [warehouse_name] - snowflake.query.queued_provision: - description: Number of compute resources queued for provisioning over the last 24 hour window. - unit: "1" - gauge: - value_type: double - enabled: true - attributes: [warehouse_name] + enabled: true + attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] # DB metrics snowflake.database.query.count: description: Total query count for database over the last 24 hour window. + stability: development unit: "1" gauge: - value_type: int + value_type: int enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] - snowflake.database.bytes_scanned.avg: - description: Average bytes scanned in a database over the last 24 hour window. - unit: By + + # Login (Security) metrics + snowflake.logins.total: + description: Total login attempts for account over the last 24 hour window. + stability: development + unit: "1" + gauge: + value_type: int + enabled: false + attributes: [error_message, reported_client_type, is_success] + # Snowpipe usage metrics + snowflake.pipe.credits_used.total: + description: Snow pipe credits contotaled over the last 24 hour window. + stability: development + unit: "{credits}" + gauge: + value_type: double + enabled: false + attributes: [pipe_name] + + # High level low dimensionality query metrics + snowflake.query.blocked: + description: Blocked query count for warehouse over the last 24 hour window. + stability: development + unit: "1" gauge: value_type: double enabled: true - attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] + attributes: [warehouse_name] snowflake.query.bytes_deleted.avg: description: Average bytes deleted in database over the last 24 hour window. + stability: development unit: By gauge: - value_type: double + value_type: double enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.bytes_spilled.local.avg: description: Average bytes spilled (intermediate results do not fit in memory) by local storage over the last 24 hour window. - unit: By + stability: development + unit: By gauge: value_type: double - enabled: false + enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.bytes_spilled.remote.avg: description: Average bytes spilled (intermediate results do not fit in memory) by remote storage over the last 24 hour window. + stability: development unit: By gauge: value_type: double @@ -179,13 +193,15 @@ metrics: attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.bytes_written.avg: description: Average bytes written by database over the last 24 hour window. - unit: By - gauge: + stability: development + unit: By + gauge: value_type: double enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.compilation_time.avg: description: Average time taken to compile query over the last 24 hour window. + stability: development unit: s gauge: value_type: double @@ -193,69 +209,103 @@ metrics: attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.data_scanned_cache.avg: description: Average percentage of data scanned from cache over the last 24 hour window. + stability: development unit: "1" gauge: value_type: double - enabled: false + enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] + snowflake.query.executed: + description: Executed query count for warehouse over the last 24 hour window. + stability: development + unit: "1" + gauge: + value_type: double + enabled: true + attributes: [warehouse_name] snowflake.query.execution_time.avg: description: Average time spent executing queries in database over the last 24 hour window. - unit: s - gauge: + stability: development + unit: s + gauge: value_type: double enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.query.partitions_scanned.avg: - description: Number of partitions scanned during query so far over the last 24 hour window. + description: Number of partitions scanned during query so far over the last 24 hour window. + stability: development unit: "1" gauge: value_type: double enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] + snowflake.query.queued_overload: + description: Overloaded query count for warehouse over the last 24 hour window. + stability: development + unit: "1" + gauge: + value_type: double + enabled: true + attributes: [warehouse_name] + snowflake.query.queued_provision: + description: Number of compute resources queued for provisioning over the last 24 hour window. + stability: development + unit: "1" + gauge: + value_type: double + enabled: true + attributes: [warehouse_name] snowflake.queued_overload_time.avg: description: Average time spent in warehouse queue due to warehouse being overloaded over the last 24 hour window. - unit: s - gauge: + stability: development + unit: s + gauge: value_type: double - enabled: true + enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.queued_provisioning_time.avg: description: Average time spent in warehouse queue waiting for resources to provision over the last 24 hour window. - unit: s + stability: development + unit: s gauge: value_type: double enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.queued_repair_time.avg: description: Average time spent in warehouse queue waiting for compute resources to be repaired over the last 24 hour window. - unit: s + stability: development + unit: s gauge: value_type: double enabled: true attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] - snowflake.rows_inserted.avg: - description: Number of rows inserted into a table (or tables) over the last 24 hour window. + snowflake.rows_deleted.avg: + description: Number of rows deleted from a table (or tables) over the last 24 hour window. + stability: development unit: "{rows}" gauge: value_type: double enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] - snowflake.rows_deleted.avg: - description: Number of rows deleted from a table (or tables) over the last 24 hour window. - unit: "{rows}" + snowflake.rows_inserted.avg: + description: Number of rows inserted into a table (or tables) over the last 24 hour window. + stability: development + unit: "{rows}" gauge: value_type: double enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.rows_produced.avg: description: Average number of rows produced by statement over the last 24 hour window. - unit: "{rows}" + stability: development + unit: "{rows}" gauge: value_type: double enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.rows_unloaded.avg: description: Average number of rows unloaded during data export over the last 24 hour window. + stability: development unit: "{rows}" gauge: value_type: double @@ -263,56 +313,55 @@ metrics: attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] snowflake.rows_updated.avg: description: Average number of rows updated in a table over the last 24 hour window. - unit: "{rows}" + stability: development + unit: "{rows}" gauge: value_type: double enabled: false attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] - snowflake.total_elapsed_time.avg: - description: Average elapsed time over the last 24 hour window. - unit: s - gauge: - value_type: double - enabled: true - attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] - # Session metric + # Session metric snowflake.session_id.count: description: Distinct session id's associated with snowflake username over the last 24 hour window. + stability: development unit: "1" gauge: value_type: int enabled: false attributes: [user_name] - - # Snowpipe usage metrics - snowflake.pipe.credits_used.total: - description: Snow pipe credits contotaled over the last 24 hour window. - unit: "{credits}" + + # Storage usage metrics + snowflake.storage.failsafe_bytes.total: + description: Number of bytes of data in Fail-safe. + stability: development + unit: By gauge: value_type: double enabled: false - attributes: [pipe_name] - # Storage usage metrics - snowflake.storage.storage_bytes.total: - description: Number of bytes of table storage used, including bytes for data currently in Time Travel. - unit: By - gauge: - value_type: int - enabled: true snowflake.storage.stage_bytes.total: description: Number of bytes of stage storage used by files in all internal stages (named, table, user). + stability: development unit: By gauge: - value_type: int + value_type: double enabled: true - snowflake.storage.failsafe_bytes.total: - description: Number of bytes of data in Fail-safe. + + snowflake.storage.storage_bytes.total: + description: Number of bytes of table storage used, including bytes for data currently in Time Travel. + stability: development unit: By gauge: - value_type: int - enabled: false + value_type: double + enabled: true + snowflake.total_elapsed_time.avg: + description: Average elapsed time over the last 24 hour window. + stability: development + unit: s + gauge: + value_type: double + enabled: true + attributes: [schema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size] tests: config: diff --git a/metric-metadata/solacereceiver.yaml b/metric-metadata/solacereceiver.yaml index b5cb0c9..5030ddd 100644 --- a/metric-metadata/solacereceiver.yaml +++ b/metric-metadata/solacereceiver.yaml @@ -19,76 +19,72 @@ tests: telemetry: metrics: - solacereceiver_failed_reconnections: + solacereceiver_dropped_egress_spans: enabled: true unit: "1" - description: Number of failed broker reconnections + description: Number of dropped egress spans + stability: development sum: value_type: int monotonic: true - solacereceiver_recoverable_unmarshalling_errors: + solacereceiver_dropped_span_messages: enabled: true unit: "1" - description: Number of recoverable message unmarshalling errors + description: Number of dropped span messages + stability: development sum: value_type: int monotonic: true - solacereceiver_fatal_unmarshalling_errors: + solacereceiver_failed_reconnections: enabled: true unit: "1" - description: Number of fatal message unmarshalling errors + description: Number of failed broker reconnections + stability: development sum: value_type: int monotonic: true - solacereceiver_dropped_span_messages: + solacereceiver_fatal_unmarshalling_errors: enabled: true unit: "1" - description: Number of dropped span messages + description: Number of fatal message unmarshalling errors + stability: development sum: value_type: int monotonic: true - solacereceiver_received_span_messages: + solacereceiver_need_upgrade: enabled: true unit: "1" - description: Number of received span messages - sum: + description: Indicates with value 1 that receiver requires an upgrade and is not compatible with messages received from a broker + stability: development + gauge: value_type: int - monotonic: true - solacereceiver_reported_spans: + solacereceiver_received_span_messages: enabled: true unit: "1" - description: Number of reported spans + description: Number of received span messages + stability: development sum: value_type: int monotonic: true - solacereceiver_receiver_status: - enabled: true - unit: "1" - description: Indicates the status of the receiver as an enum. 0 = starting, 1 = connecting, 2 = connected, 3 = disabled (often paired with needs_upgrade), 4 = terminating, 5 = terminated - gauge: - value_type: int - solacereceiver_need_upgrade: + solacereceiver_receiver_flow_control_recent_retries: enabled: true unit: "1" - description: Indicates with value 1 that receiver requires an upgrade and is not compatible with messages received from a broker + description: Most recent/current retry count when flow controlled + stability: development gauge: value_type: int solacereceiver_receiver_flow_control_status: enabled: true unit: "1" description: Indicates the flow control status of the receiver. 0 = not flow controlled, 1 = currently flow controlled - gauge: - value_type: int - solacereceiver_receiver_flow_control_recent_retries: - enabled: true - unit: "1" - description: Most recent/current retry count when flow controlled + stability: development gauge: value_type: int solacereceiver_receiver_flow_control_total: enabled: true unit: "1" description: Number of times the receiver instance became flow controlled + stability: development sum: value_type: int monotonic: true @@ -96,13 +92,30 @@ telemetry: enabled: true unit: "1" description: Number of times the receiver instance became flow controlled and resolved situations after the first retry + stability: development sum: value_type: int monotonic: true - solacereceiver_dropped_egress_spans: + solacereceiver_receiver_status: enabled: true unit: "1" - description: Number of dropped egress spans + description: Indicates the status of the receiver as an enum. 0 = starting, 1 = connecting, 2 = connected, 3 = disabled (often paired with needs_upgrade), 4 = terminating, 5 = terminated + stability: development + gauge: + value_type: int + solacereceiver_recoverable_unmarshalling_errors: + enabled: true + unit: "1" + description: Number of recoverable message unmarshalling errors + stability: development + sum: + value_type: int + monotonic: true + solacereceiver_reported_spans: + enabled: true + unit: "1" + description: Number of reported spans + stability: development sum: value_type: int monotonic: true diff --git a/metric-metadata/solarwindsapmsettingsextension.yaml b/metric-metadata/solarwindsapmsettingsextension.yaml index 39f278b..217e8fe 100644 --- a/metric-metadata/solarwindsapmsettingsextension.yaml +++ b/metric-metadata/solarwindsapmsettingsextension.yaml @@ -1,3 +1,4 @@ +display_name: Solarwinds APM Settings extension type: solarwindsapmsettings status: diff --git a/metric-metadata/spanmetricsconnector.yaml b/metric-metadata/spanmetricsconnector.yaml index d051339..b896204 100644 --- a/metric-metadata/spanmetricsconnector.yaml +++ b/metric-metadata/spanmetricsconnector.yaml @@ -1,4 +1,5 @@ type: spanmetrics +display_name: Span Metrics Connector status: class: connector diff --git a/metric-metadata/spanprocessor.yaml b/metric-metadata/spanprocessor.yaml index 77e5425..f4557c3 100644 --- a/metric-metadata/spanprocessor.yaml +++ b/metric-metadata/spanprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Span Processor type: span status: diff --git a/metric-metadata/splunk.yaml b/metric-metadata/splunk.yaml index 89d2c9a..98d2e1f 100644 --- a/metric-metadata/splunk.yaml +++ b/metric-metadata/splunk.yaml @@ -1,4 +1,3 @@ status: - disable_codecov_badge: true codeowners: active: [dmitryax] diff --git a/metric-metadata/splunkenterprisereceiver.yaml b/metric-metadata/splunkenterprisereceiver.yaml index 0851555..c4651ea 100644 --- a/metric-metadata/splunkenterprisereceiver.yaml +++ b/metric-metadata/splunkenterprisereceiver.yaml @@ -9,257 +9,371 @@ status: active: [shalper2, MovieStoreGuy, greatestusername] attributes: + splunk.bucket.dir: + description: The bucket super-directory (home, cold, thawed) for each index + type: string + splunk.feature: + description: The Feature name from the Splunk Health Introspection Endpoint + type: string + splunk.feature.health: + description: The Health (in color form) of a Splunk Feature from the Splunk Health Introspection Endpoint + type: string splunk.host: description: The name of the splunk host - type: string - splunk.splunkd.build: - description: The build number for this Splunk instance version - type: string - splunk.splunkd.version: - description: The splunkd version number type: string splunk.index.name: description: The name of the index reporting a specific KPI type: string - splunk.indexer.status: - description: The status message reported for a specific object - type: string splunk.indexer.searchable: description: The searchability status reported for a specific object type: string - splunk.bucket.dir: - description: The bucket super-directory (home, cold, thawed) for each index + splunk.indexer.status: + description: The status message reported for a specific object type: string - splunk.queue.name: - description: The name of the queue reporting a specific KPI + splunk.kvstore.external: + description: Value denoting if the KV store is using an external service type: string splunk.kvstore.status.value: description: The string value of the status returned when reporting on KV store using the introspection endpoint type: string - splunk.kvstore.external: - description: Value denoting if the KV store is using an external service - type: string splunk.kvstore.storage.engine: description: The backend storage used by the KV store type: string - splunk.searchartifacts.cache.type: - description: The search artifacts cache type + splunk.license.label: + description: The label of the license. type: string - splunk.feature: - description: The Feature name from the Splunk Health Introspection Endpoint + splunk.license.status: + description: The status of the license. type: string - splunk.feature.health: - description: The Health (in color form) of a Splunk Feature from the Splunk Health Introspection Endpoint + splunk.license.type: + description: The type of license. + type: string + + splunk.queue.name: + description: The name of the queue reporting a specific KPI type: string + splunk.rollingorrestart: + description: Boolean that indicates if there is a rolling restart or rolling upgrade in progress. + type: bool splunk.search.state: description: The dispatch state of the search type: string splunk.searchable.restart: description: Boolean that indicates if a searchable rolling restart/upgrade in progress.t type: bool - splunk.rollingorrestart: - description: Boolean that indicates if there is a rolling restart or rolling upgrade in progress. - type: bool + splunk.searchartifacts.cache.type: + description: The search artifacts cache type + type: string + splunk.splunkd.build: + description: The build number for this Splunk instance version + type: string + splunk.splunkd.version: + description: The splunkd version number + type: string metrics: - splunk.license.index.usage: - enabled: false - description: Gauge tracking the indexed license usage per index - unit: By - gauge: - value_type: int - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - splunk.scheduler.avg.execution.latency: + splunk.aggregation.queue.ratio: enabled: false - description: Gauge tracking the average execution latency of scheduled searches - unit: '{ms}' + description: Gauge tracking the average indexer aggregation queue ration (%). *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{%}' gauge: - value_type: double + value_type: double attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.scheduler.completion.ratio: + splunk.buckets.searchable.status: enabled: false - description: Gauge tracking the ratio of completed to skipped scheduled searches - unit: '{%}' + description: Gauge tracking the number of buckets and their searchable status. *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{count}' gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.indexer.avg.rate: + value_type: int + attributes: [splunk.host, splunk.indexer.searchable, splunk.splunkd.build, splunk.splunkd.version] + splunk.data.indexes.extended.bucket.count: enabled: false - description: Gauge tracking the average rate of indexed data. **Note:** Search is best run against a Cluster Manager. - unit: KBy + description: Count of buckets per index + stability: development + unit: '{buckets}' gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.pipeline.set.count: + value_type: int + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + ## Broken down `bucket_dirs` + splunk.data.indexes.extended.bucket.event.count: enabled: false - description: Gauge tracking the number of pipeline sets per indexer. **Note:** Search is best run against a Cluster Manager. - unit: KBy + description: Count of events in this bucket super-directory. *Note:** Must be pointed at specific indexer `endpoint`. + stability: development + unit: '{events}' gauge: - value_type: int - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.parse.queue.ratio: + value_type: int + attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] + splunk.data.indexes.extended.bucket.hot.count: enabled: false - description: Gauge tracking the average indexer parser queue ration (%). *Note:** Search is best run against a Cluster Manager. - unit: '{%}' + description: (If size > 0) Number of hot buckets. *Note:** Must be pointed at specific indexer `endpoint`. + stability: development + unit: '{buckets}' gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.aggregation.queue.ratio: + value_type: int + attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] + splunk.data.indexes.extended.bucket.warm.count: enabled: false - description: Gauge tracking the average indexer aggregation queue ration (%). *Note:** Search is best run against a Cluster Manager. - unit: '{%}' + description: (If size > 0) Number of warm buckets. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development + unit: '{buckets}' gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.typing.queue.ratio: + value_type: int + attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] + splunk.data.indexes.extended.event.count: enabled: false - description: Gauge tracking the average indexer typing queue ration (%). *Note:** Search is best run against a Cluster Manager. - unit: '{%}' + description: Count of events for index, excluding frozen events. Approximately equal to the event_count sum of all buckets. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development + unit: '{events}' gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.indexer.queue.ratio: + value_type: int + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + splunk.data.indexes.extended.raw.size: enabled: false - description: Gauge tracking the average indexer index queue ration (%). *Note:** Search is best run against a Cluster Manager. - unit: '{%}' + description: Size in bytes on disk of the /rawdata/ directories of all buckets in this index, excluding frozen *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development + unit: By gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.scheduler.avg.run.time: + value_type: int + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + # 'services/data/indexes-extended' + splunk.data.indexes.extended.total.size: enabled: false - description: Gauge tracking the average runtime of scheduled searches - unit: '{ms}' + description: Size in bytes on disk of this index *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development + unit: By gauge: - value_type: double - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.indexer.raw.write.time: + value_type: int + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + #`services/server/health/splunkd/details` + splunk.health: + enabled: true + description: The status ('red', 'yellow', or 'green') of the Splunk server. Health of 'red' produces a 0 while all other colors produce a 1. + stability: development + unit: "{status}" + gauge: + value_type: int + attributes: [splunk.feature, splunk.feature.health, splunk.splunkd.build, splunk.splunkd.version] + splunk.indexer.avg.rate: enabled: false - description: Gauge tracking the number of raw write seconds per instance - unit: '{s}' + description: Gauge tracking the average rate of indexed data. **Note:** Search is best run against a Cluster Manager. + stability: development + unit: KBy gauge: - value_type: double + value_type: double attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] splunk.indexer.cpu.time: enabled: false description: Gauge tracking the number of indexing process cpu seconds per instance + stability: development unit: '{s}' gauge: - value_type: double + value_type: double attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.io.avg.iops: + splunk.indexer.queue.ratio: enabled: false - description: Gauge tracking the average IOPs used per instance - unit: '{iops}' + description: Gauge tracking the average indexer index queue ration (%). *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{%}' gauge: - value_type: int + value_type: double attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.buckets.searchable.status: + splunk.indexer.raw.write.time: enabled: false - description: Gauge tracking the number of buckets and their searchable status. *Note:** Search is best run against a Cluster Manager. - unit: '{count}' + description: Gauge tracking the number of raw write seconds per instance + stability: development + unit: '{s}' gauge: - value_type: int - attributes: [splunk.host, splunk.indexer.searchable, splunk.splunkd.build, splunk.splunkd.version] - splunk.indexes.bucket.count: + value_type: double + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + # `services/cluster/manager/status` + splunk.indexer.rollingrestart.status: enabled: false - description: Gauge tracking the indexes and their bucket counts. *Note:** Search is best run against a Cluster Manager. - unit: '{count}' + description: The status of a rolling restart. + stability: development + unit: "{status}" gauge: - value_type: int - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - splunk.indexes.size: + value_type: int + attributes: [splunk.searchable.restart, splunk.rollingorrestart, splunk.splunkd.build, splunk.splunkd.version] + # 'services/server/introspection/indexer' + splunk.indexer.throughput: enabled: false - description: Gauge tracking the indexes and their total size (gb). *Note:** Search is best run against a Cluster Manager. - unit: Gb + description: Gauge tracking average bytes per second throughput of indexer. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development + unit: By/s gauge: - value_type: double - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + value_type: double + # attribute `status` can be one of the following `normal`, `throttled`, `stopped` + attributes: [splunk.indexer.status, splunk.splunkd.build, splunk.splunkd.version] splunk.indexes.avg.size: enabled: false description: Gauge tracking the indexes and their average size (gb). *Note:** Search is best run against a Cluster Manager. + stability: development unit: Gb gauge: - value_type: double + value_type: double attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] splunk.indexes.avg.usage: enabled: false description: Gauge tracking the indexes and their average usage (%). *Note:** Search is best run against a Cluster Manager. + stability: development unit: '{%}' gauge: - value_type: double + value_type: double + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + splunk.indexes.bucket.count: + enabled: false + description: Gauge tracking the indexes and their bucket counts. *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{count}' + gauge: + value_type: int attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] splunk.indexes.median.data.age: enabled: false description: Gauge tracking the indexes and their median data age (days). *Note:** Search is best run against a Cluster Manager. + stability: development unit: '{days}' gauge: - value_type: int + value_type: int attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - - # 'services/server/introspection/indexer' - splunk.indexer.throughput: + splunk.indexes.size: enabled: false - description: Gauge tracking average bytes per second throughput of indexer. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. - unit: By/s + description: Gauge tracking the indexes and their total size (gb). *Note:** Search is best run against a Cluster Manager. + stability: development + unit: Gb gauge: value_type: double - # attribute `status` can be one of the following `normal`, `throttled`, `stopped` - attributes: [splunk.indexer.status, splunk.splunkd.build, splunk.splunkd.version] - # 'services/data/indexes-extended' - splunk.data.indexes.extended.total.size: + attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] + splunk.io.avg.iops: enabled: false - description: Size in bytes on disk of this index *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. - unit: By + description: Gauge tracking the average IOPs used per instance + stability: development + unit: '{iops}' gauge: value_type: int - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - splunk.data.indexes.extended.event.count: + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + splunk.kvstore.backup.status: enabled: false - description: Count of events for index, excluding frozen events. Approximately equal to the event_count sum of all buckets. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. - unit: '{events}' + description: Backup and restore status of the KV store. + stability: development + unit: '{status}' gauge: value_type: int - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - splunk.data.indexes.extended.bucket.count: + attributes: [splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] + splunk.kvstore.replication.status: enabled: false - description: Count of buckets per index - unit: '{buckets}' + description: Replication status of the KV store. + stability: development + unit: '{status}' gauge: value_type: int - attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - splunk.data.indexes.extended.raw.size: + attributes: [splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] +#'services/kvstore/status' + splunk.kvstore.status: enabled: false - description: Size in bytes on disk of the /rawdata/ directories of all buckets in this index, excluding frozen *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + description: This is the overall status of the kvstore for the given deployment. + stability: development + unit: '{status}' + gauge: + value_type: int + attributes: [splunk.kvstore.storage.engine, splunk.kvstore.external, splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] + splunk.license.expiration.seconds_remaining: + enabled: false + stability: development + description: Gauge tracking the seconds remaining on any given Splunk License found via Splunk API. **Note:** This will only work on a Cluster Manager. + unit: "{seconds}" + gauge: + value_type: int + attributes: [splunk.license.status, splunk.license.label, splunk.license.type, splunk.splunkd.build, splunk.splunkd.version] + splunk.license.index.usage: + enabled: false + description: Gauge tracking the indexed license usage per index + stability: development unit: By gauge: value_type: int attributes: [splunk.index.name, splunk.splunkd.build, splunk.splunkd.version] - ## Broken down `bucket_dirs` - splunk.data.indexes.extended.bucket.event.count: + splunk.parse.queue.ratio: enabled: false - description: Count of events in this bucket super-directory. *Note:** Must be pointed at specific indexer `endpoint`. - unit: '{events}' + description: Gauge tracking the average indexer parser queue ration (%). *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{%}' + gauge: + value_type: double + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + splunk.pipeline.set.count: + enabled: false + description: Gauge tracking the number of pipeline sets per indexer. **Note:** Search is best run against a Cluster Manager. + stability: development + unit: KBy gauge: value_type: int - attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] - splunk.data.indexes.extended.bucket.hot.count: + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + splunk.scheduler.avg.execution.latency: enabled: false - description: (If size > 0) Number of hot buckets. *Note:** Must be pointed at specific indexer `endpoint`. - unit: '{buckets}' + description: Gauge tracking the average execution latency of scheduled searches + stability: development + unit: '{ms}' + gauge: + value_type: double + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + splunk.scheduler.avg.run.time: + enabled: false + description: Gauge tracking the average runtime of scheduled searches + stability: development + unit: '{ms}' + gauge: + value_type: double + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + splunk.scheduler.completion.ratio: + enabled: false + description: Gauge tracking the ratio of completed to skipped scheduled searches + stability: development + unit: '{%}' + gauge: + value_type: double + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] + + # Search Metrics + splunk.search.duration: + enabled: false + description: Gauge tracking the duration in seconds of the last search probe call. + stability: development + unit: "{status}" + gauge: + value_type: double + attributes: [splunk.splunkd.build, splunk.splunkd.version] + splunk.search.initiation: + enabled: false + description: Gauge tracking whether the last search probe successfully initiated a search. + stability: development + unit: "{status}" gauge: value_type: int - attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] - splunk.data.indexes.extended.bucket.warm.count: + attributes: [splunk.splunkd.build, splunk.splunkd.version] + splunk.search.status: enabled: false - description: (If size > 0) Number of warm buckets. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. - unit: '{buckets}' + description: Gauge tracking the dispatch status of the last search probe. + stability: development + unit: "{status}" gauge: value_type: int - attributes: [splunk.index.name, splunk.bucket.dir, splunk.splunkd.build, splunk.splunkd.version] + attributes: [splunk.search.state, splunk.splunkd.build, splunk.splunkd.version] + splunk.search.success: + enabled: false + description: Gauge tracking whether the last search probe call was successful with the dispatch state 'DONE'. + stability: development + unit: "{status}" + gauge: + value_type: int + attributes: [splunk.splunkd.build, splunk.splunkd.version] #'services/server/introspection/queues' splunk.server.introspection.queues.current: enabled: false description: Gauge tracking current length of queue. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development unit: '{queues}' gauge: value_type: int @@ -267,45 +381,26 @@ metrics: splunk.server.introspection.queues.current.bytes: enabled: false description: Gauge tracking current bytes waiting in queue. *Note:** Must be pointed at specific indexer `endpoint` and gathers metrics from only that indexer. + stability: development unit: By gauge: value_type: int - attributes: [splunk.queue.name, splunk.splunkd.build, splunk.splunkd.version] -#'services/kvstore/status' - splunk.kvstore.status: - enabled: false - description: This is the overall status of the kvstore for the given deployment. - unit: '{status}' - gauge: - value_type: int - attributes: [splunk.kvstore.storage.engine, splunk.kvstore.external, splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] - splunk.kvstore.replication.status: - enabled: false - description: Replication status of the KV store. - unit: '{status}' - gauge: - value_type: int - attributes: [splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] - splunk.kvstore.backup.status: - enabled: false - description: Backup and restore status of the KV store. - unit: '{status}' - gauge: - value_type: int - attributes: [splunk.kvstore.status.value, splunk.splunkd.build, splunk.splunkd.version] + attributes: [splunk.queue.name, splunk.splunkd.build, splunk.splunkd.version] #'services/server/status/dispatch-artifacts' splunk.server.searchartifacts.adhoc: enabled: false description: Gauge tracking number of ad hoc search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.scheduled: + splunk.server.searchartifacts.adhoc.size: enabled: false - description: Gauge tracking number of scheduled search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge total size (MB) of ad hoc search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false @@ -315,139 +410,111 @@ metrics: splunk.server.searchartifacts.completed: enabled: false description: Gauge tracking number of artifacts currently on disk that belong to finished searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.incomplete: + splunk.server.searchartifacts.completed.size: enabled: false - description: Gauge tracking number of artifacts currently on disk that belong to unfinished/running searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge total size (MB) of artifacts currently on disk that belong to finished searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.invalid: + splunk.server.searchartifacts.incomplete: enabled: false - description: Gauge tracking number of artifacts currently on disk that are not in a valid state, such as missing info.csv file, etc. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge tracking number of artifacts currently on disk that belong to unfinished/running searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.savedsearches: + splunk.server.searchartifacts.incomplete.size: enabled: false - description: Gauge tracking, for the `splunk.server.searchartifacts.scheduled` number of scheduled search artifacts, how many different saved-searches they belong to. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge total size (MB) of artifacts currently on disk that belong to unfinished/running searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.job.cache.size: + splunk.server.searchartifacts.invalid: enabled: false - description: Gauge tracking, in megabytes, memory used to cache job status and job info of all search artifacts, available in builds 9.1.2312.207+ and 9.3.x+. - unit: "{mb}" + description: Gauge tracking number of artifacts currently on disk that are not in a valid state, such as missing info.csv file, etc. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development + unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [splunk.host, splunk.searchartifacts.cache.type, splunk.splunkd.build, splunk.splunkd.version] + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] splunk.server.searchartifacts.job.cache.count: enabled: false description: Gauge tracking number search artifacts metadata stored in memory, available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.adhoc.size: + splunk.server.searchartifacts.job.cache.size: enabled: false - description: Gauge total size (MB) of ad hoc search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. - unit: "{search_artifacts}" + description: Gauge tracking, in megabytes, memory used to cache job status and job info of all search artifacts, available in builds 9.1.2312.207+ and 9.3.x+. + stability: development + unit: "{mb}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int - attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.scheduled.size: + attributes: [splunk.host, splunk.searchartifacts.cache.type, splunk.splunkd.build, splunk.splunkd.version] + splunk.server.searchartifacts.savedsearches: enabled: false - description: Gauge total size (MB) of scheduled search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge tracking, for the `splunk.server.searchartifacts.scheduled` number of scheduled search artifacts, how many different saved-searches they belong to. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.completed.size: + splunk.server.searchartifacts.scheduled: enabled: false - description: Gauge total size (MB) of artifacts currently on disk that belong to finished searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge tracking number of scheduled search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - splunk.server.searchartifacts.incomplete.size: + splunk.server.searchartifacts.scheduled.size: enabled: false - description: Gauge total size (MB) of artifacts currently on disk that belong to unfinished/running searches. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + description: Gauge total size (MB) of scheduled search artifacts currently on disk. Note:* Must be pointed at specific Search Head endpoint and gathers metrics from only that Search Head. Available in builds 9.1.2312.207+ and 9.3.x+. + stability: development unit: "{search_artifacts}" gauge: monotonic: false aggregation_temporality: cumulative value_type: int attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] - #`services/server/health/splunkd/details` - splunk.health: - enabled: true - description: The status ('red', 'yellow', or 'green') of the Splunk server. Health of 'red' produces a 0 while all other colors produce a 1. - unit: "{status}" - gauge: - value_type: int - attributes: [splunk.feature, splunk.feature.health, splunk.splunkd.build, splunk.splunkd.version] - # `services/cluster/manager/status` - splunk.indexer.rollingrestart.status: - enabled: false - description: The status of a rolling restart. - unit: "{status}" - gauge: - value_type: int - attributes: [splunk.searchable.restart, splunk.rollingorrestart, splunk.splunkd.build, splunk.splunkd.version] - - # Search Metrics - splunk.search.duration: + splunk.typing.queue.ratio: enabled: false - description: Gauge tracking the duration in seconds of the last search probe call. - unit: "{status}" + description: Gauge tracking the average indexer typing queue ration (%). *Note:** Search is best run against a Cluster Manager. + stability: development + unit: '{%}' gauge: value_type: double - attributes: [splunk.splunkd.build, splunk.splunkd.version] - splunk.search.initiation: - enabled: false - description: Gauge tracking whether the last search probe successfully initiated a search. - unit: "{status}" - gauge: - value_type: int - attributes: [splunk.splunkd.build, splunk.splunkd.version] - splunk.search.status: - enabled: false - description: Gauge tracking the dispatch status of the last search probe. - unit: "{status}" - gauge: - value_type: int - attributes: [splunk.search.state, splunk.splunkd.build, splunk.splunkd.version] - splunk.search.success: - enabled: false - description: Gauge tracking whether the last search probe call was successful with the dispatch state 'DONE'. - unit: "{status}" - gauge: - value_type: int - attributes: [splunk.splunkd.build, splunk.splunkd.version] + attributes: [splunk.host, splunk.splunkd.build, splunk.splunkd.version] tests: config: diff --git a/metric-metadata/splunkhecexporter.yaml b/metric-metadata/splunkhecexporter.yaml index aba7dde..9255f42 100644 --- a/metric-metadata/splunkhecexporter.yaml +++ b/metric-metadata/splunkhecexporter.yaml @@ -1,4 +1,5 @@ type: splunk_hec +display_name: Splunk HTTP Event Collector (HEC) Exporter status: class: exporter diff --git a/metric-metadata/sqlqueryreceiver.yaml b/metric-metadata/sqlqueryreceiver.yaml index e3a472b..01dcea3 100644 --- a/metric-metadata/sqlqueryreceiver.yaml +++ b/metric-metadata/sqlqueryreceiver.yaml @@ -19,4 +19,18 @@ tests: top: # Can be removed once the following issue is resolved: # https://github.com/snowflakedb/gosnowflake/issues/1369 - - "github.com/snowflakedb/gosnowflake.initOCSPCacheClearer.func1" \ No newline at end of file + - "github.com/snowflakedb/gosnowflake.initOCSPCacheClearer.func1" + config: + driver: postgres + host: localhost + port: 5432 + database: test + username: test + password: test + queries: + - sql: "SELECT 1" + metrics: + - metric_name: test_metric + value_column: "1" + value_type: int + data_type: gauge diff --git a/metric-metadata/sqlserverreceiver.yaml b/metric-metadata/sqlserverreceiver.yaml index 97c85bc..1c1c464 100644 --- a/metric-metadata/sqlserverreceiver.yaml +++ b/metric-metadata/sqlserverreceiver.yaml @@ -7,22 +7,15 @@ status: development: [logs] distributions: [contrib] codeowners: - active: [StefanKurek, sincejune, crobert-1] + active: [sincejune, crobert-1] + emeritus: [StefanKurek] seeking_new: true resource_attributes: - sqlserver.database.name: - description: The name of the SQL Server database. + host.name: + description: The host name of SQL Server enabled: true type: string - sqlserver.instance.name: - description: The name of the SQL Server instance being monitored. - enabled: false - type: string - sqlserver.computer.name: - description: The name of the SQL Server instance being monitored. - enabled: false - type: string server.address: description: Name of the database host. enabled: false @@ -31,133 +24,91 @@ resource_attributes: description: Server port number. enabled: false type: int - host.name: - description: The host name of SQL Server + service.instance.id: + description: A unique identifier of the SQL Server instance in the format host:port. This resource attribute is only available when the receiver is configured to directly connect to SQL Server. enabled: true type: string - -attributes: - # attributes for metrics - page.operations: - name_override: type - description: The page operation types. - type: string - enum: [read, write] - performance_counter.object_name: - description: Category to which this counter belongs + sqlserver.computer.name: + description: The name of the SQL Server instance being monitored. + enabled: false type: string - physical_filename: - description: The physical filename of the file being monitored. + sqlserver.database.name: + description: The name of the SQL Server database. + enabled: true type: string - logical_filename: - description: The logical filename of the file being monitored. + sqlserver.instance.name: + description: The name of the SQL Server instance being monitored. + enabled: false type: string - file_type: - description: The type of file being monitored. + +attributes: + # attributes for metrics + client.address: + description: Hostname or address of the client. type: string + client.port: + description: TCP port used by the client. + type: int database.status: description: The current status of a database type: string enum: [online, restoring, recovering, pending_recovery, suspect, offline] - direction: - description: The direction of flow of bytes or operations. + db.namespace: + description: The database name. type: string - enum: [read, write] - replica.direction: - description: The direction of flow of bytes for replica. + db.query.text: + description: The text of the database query being executed. type: string - enum: [transmit, receive] - table.state: - description: The state of the table. + db.system.name: + description: The database management system (DBMS) product as identified by the client instrumentation. type: string - enum: [active, inactive] - table.status: - description: The status of the table. + ## query sample + direction: + description: The direction of flow of bytes or operations. type: string - enum: [temporary, permanent] - tempdb.state: - description: The status of the tempdb space usage. + enum: [read, write] + file_type: + description: The type of file being monitored. type: string - enum: [free, used] - wait.category: - description: Category of the reason for a wait. + logical_filename: + description: The logical filename of the file being monitored. type: string - wait.type: - description: Type of the wait, view [WaitTypes documentation](https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-os-wait-stats-transact-sql?view=sql-server-ver16#WaitTypes) for more information. + network.peer.address: + description: IP address of the peer client. type: string - # attributes for events - ## common - db.query.text: - description: The text of the database query being executed. + network.peer.port: + description: TCP port used by the peer client. + type: int + page.operations: + name_override: type + description: The page operation types. type: string - sqlserver.query_hash: - description: Binary hash value calculated on the query and used to identify queries with similar logic, reported in the HEX format. + enum: [read, write] + performance_counter.object_name: + description: Category to which this counter belongs type: string - sqlserver.query_plan_hash: - description: Binary hash value calculated on the query execution plan and used to identify similar query execution plans, reported in the HEX format. + physical_filename: + description: The physical filename of the file being monitored. type: string - sqlserver.total_elapsed_time: - description: Total elapsed time for completed executions of this plan, reported in delta seconds. - type: double - ## top query - sqlserver.total_worker_time: - description: Total amount of CPU time that was consumed by executions of this plan since it was compiled, reported in delta seconds. - type: double - sqlserver.execution_count: - description: Number of times that the plan has been executed since it was last compiled, reported in delta value. - type: int - sqlserver.total_logical_reads: - description: Total number of logical reads performed by executions of this plan since it was compiled, reported in delta value. - type: int - sqlserver.total_logical_writes: - description: Total number of logical writes performed by executions of this plan since it was compiled, reported in delta value. - type: int - sqlserver.total_physical_reads: - description: Total number of physical reads performed by executions of this plan since it was compiled, reported in delta value. - type: int - sqlserver.query_plan: - description: The query execution plan used by the SQL Server. + replica.direction: + description: The direction of flow of bytes for replica. type: string - sqlserver.total_rows: - description: Total number of rows returned by the query, reported in delta value. - type: int - sqlserver.total_grant_kb: - description: The total amount of reserved memory grant in KB this plan received since it was compiled, reported in delta value. - type: int + enum: [transmit, receive] server.address: description: The network address of the server hosting the database. type: string server.port: description: The port number on which the server is listening. type: int - db.system.name: - description: The database management system (DBMS) product as identified by the client instrumentation. - type: string - ## query sample - client.address: - description: Hostname or address of the client. - type: string - client.port: - description: TCP port used by the client. - type: int - db.namespace: - description: The database name. - type: string - network.peer.address: - description: IP address of the peer client. - type: string - network.peer.port: - description: TCP port used by the peer client. - type: int sqlserver.blocking_session_id: description: Session ID that is blocking the current session. 0 if none. type: int - sqlserver.context_info: - description: Context information for the session, represented as a hexadecimal string. - type: string sqlserver.command: description: SQL command type being executed. type: string + sqlserver.context_info: + description: Context information for the session, represented as a hexadecimal string. + type: string sqlserver.cpu_time: description: CPU time consumed by the query, in seconds. type: double @@ -167,6 +118,9 @@ attributes: sqlserver.estimated_completion_time: description: Estimated time remaining for the request to complete, in seconds. type: double + sqlserver.execution_count: + description: Number of times that the plan has been executed since it was last compiled, reported in delta value. + type: int sqlserver.lock_timeout: description: Lock timeout value in seconds. type: double @@ -179,6 +133,22 @@ attributes: sqlserver.percent_complete: description: Percentage of work completed. type: double + # Stored Procedures + sqlserver.procedure_id: + description: The SQL Server ID of the stored procedure, if any + type: string + sqlserver.procedure_name: + description: The name of the stored procedure, if any + type: string + sqlserver.query_hash: + description: Binary hash value calculated on the query and used to identify queries with similar logic, reported in the HEX format. + type: string + sqlserver.query_plan: + description: The query execution plan used by the SQL Server. + type: string + sqlserver.query_plan_hash: + description: Binary hash value calculated on the query execution plan and used to identify similar query execution plans, reported in the HEX format. + type: string sqlserver.query_start: description: Timestamp of when the SQL query started (ISO 8601 format). type: string @@ -197,6 +167,28 @@ attributes: sqlserver.session_status: description: Status of the session (e.g., running, sleeping). type: string + sqlserver.total_elapsed_time: + description: Total elapsed time for completed executions of this plan, reported in delta seconds. + type: double + ## top query + sqlserver.total_grant_kb: + description: The total amount of reserved memory grant in KB this plan received since it was compiled, reported in delta value. + type: int + sqlserver.total_logical_reads: + description: Total number of logical reads performed by executions of this plan since it was compiled, reported in delta value. + type: int + sqlserver.total_logical_writes: + description: Total number of logical writes performed by executions of this plan since it was compiled, reported in delta value. + type: int + sqlserver.total_physical_reads: + description: Total number of physical reads performed by executions of this plan since it was compiled, reported in delta value. + type: int + sqlserver.total_rows: + description: Total number of rows returned by the query, reported in delta value. + type: int + sqlserver.total_worker_time: + description: Total amount of CPU time that was consumed by executions of this plan since it was compiled, reported in delta seconds. + type: double sqlserver.transaction_id: description: Unique ID of the active transaction. type: int @@ -215,30 +207,31 @@ attributes: sqlserver.writes: description: Number of writes performed by the query. type: int + table.state: + description: The state of the table. + type: string + enum: [active, inactive] + table.status: + description: The status of the table. + type: string + enum: [temporary, permanent] + tempdb.state: + description: The status of the tempdb space usage. + type: string + enum: [free, used] user.name: description: Login name associated with the SQL Server session. type: string + wait.category: + description: Category of the reason for a wait. + type: string + wait.type: + description: Type of the wait, view [WaitTypes documentation](https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-os-wait-stats-transact-sql?view=sql-server-ver16#WaitTypes) for more information. + type: string + # attributes for events + ## common events: - db.server.top_query: - enabled: false - description: top query - attributes: - - sqlserver.total_worker_time - - db.query.text - - sqlserver.execution_count - - sqlserver.total_logical_reads - - sqlserver.total_logical_writes - - sqlserver.total_physical_reads - - sqlserver.query_hash - - sqlserver.query_plan - - sqlserver.query_plan_hash - - sqlserver.total_rows - - sqlserver.total_elapsed_time - - sqlserver.total_grant_kb - - server.address - - server.port - - db.system.name db.server.query_sample: enabled: false description: query sample @@ -276,159 +269,119 @@ events: - sqlserver.wait_type - sqlserver.writes - user.name + - sqlserver.procedure_id + - sqlserver.procedure_name + + db.server.top_query: + enabled: false + description: top query + attributes: + - sqlserver.total_worker_time + - db.query.text + - sqlserver.execution_count + - sqlserver.total_logical_reads + - sqlserver.total_logical_writes + - sqlserver.total_physical_reads + - sqlserver.query_hash + - sqlserver.query_plan + - sqlserver.query_plan_hash + - sqlserver.total_rows + - sqlserver.total_elapsed_time + - sqlserver.total_grant_kb + - server.address + - server.port + - db.system.name + - sqlserver.procedure_id + - sqlserver.procedure_name metrics: - sqlserver.user.connection.count: - enabled: true - description: Number of users connected to the SQL Server. - unit: "{connections}" - gauge: - value_type: int - sqlserver.lock.wait_time.avg: - enabled: true - description: Average wait time for all lock requests that had to wait. - unit: ms - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.lock.wait.count: - enabled: false - description: Cumulative count of lock waits that occurred. - unit: "{wait}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.lock.wait.rate: - enabled: true - description: Number of lock requests resulting in a wait. - unit: "{requests}/s" - gauge: - value_type: double - sqlserver.batch.request.rate: + sqlserver.batch.request.rate: enabled: true description: Number of batch requests received by SQL Server. + stability: development unit: "{requests}/s" gauge: value_type: double sqlserver.batch.sql_compilation.rate: enabled: true description: Number of SQL compilations needed. + stability: development unit: "{compilations}/s" gauge: value_type: double sqlserver.batch.sql_recompilation.rate: enabled: true description: Number of SQL recompilations needed. + stability: development unit: "{compilations}/s" gauge: value_type: double - sqlserver.page.buffer_cache.hit_ratio: - enabled: true - description: Pages found in the buffer pool without having to read from disk. - unit: "%" + sqlserver.computer.uptime: + enabled: false + description: Computer uptime. + stability: development + unit: "{seconds}" gauge: - value_type: double - sqlserver.page.life_expectancy: - enabled: true - description: Time a page will stay in the buffer pool. - unit: s + value_type: int + input_type: string + sqlserver.cpu.count: + enabled: false + description: Number of CPUs. + stability: development + unit: "{CPUs}" gauge: value_type: int - attributes: [performance_counter.object_name] - sqlserver.page.split.rate: - enabled: true - description: Number of pages split as a result of overflowing index pages. - unit: "{pages}/s" + input_type: string + sqlserver.database.backup_or_restore.rate: + enabled: false + description: Total number of backups/restores. + stability: development + unit: “{backups_or_restores}/s” gauge: value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.page.lazy_write.rate: - enabled: true - description: Number of lazy writes moving dirty pages to disk. - unit: "{writes}/s" + attributes: [] + sqlserver.database.count: + enabled: false + description: The number of databases + stability: development + unit: "{databases}" gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.page.checkpoint.flush.rate: - enabled: true - description: Number of pages flushed by operations requiring dirty pages to be flushed. - unit: "{pages}/s" + value_type: int + input_type: string + attributes: [database.status] + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.database.execution.errors: + enabled: false + description: Number of execution errors. + stability: development + unit: “{errors}” gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.page.operation.rate: - enabled: true - description: Number of physical database page operations issued. - unit: "{operations}/s" + value_type: int + attributes: [] + sqlserver.database.full_scan.rate: + enabled: false + description: The number of unrestricted full table or index scans. + stability: development + unit: "{scans}/s" gauge: value_type: double - attributes: [page.operations] - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.growth.count: - enabled: true - description: Total number of transaction log expansions for a database. - unit: "{growths}" - sum: - monotonic: true - aggregation_temporality: cumulative - value_type: int - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.shrink.count: - enabled: true - description: Total number of transaction log shrinks for a database. - unit: "{shrinks}" + attributes: [] + sqlserver.database.io: + enabled: false + description: The number of bytes of I/O on this file. + stability: development + unit: "By" sum: monotonic: true aggregation_temporality: cumulative value_type: int - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.usage: - enabled: true - description: Percent of transaction log space used. - unit: "%" - gauge: - value_type: int - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.flush.wait.rate: - enabled: true - description: Number of commits waiting for a transaction log flush. - unit: "{commits}/s" - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.flush.rate: - enabled: true - description: Number of log flushes. - unit: "{flushes}/s" - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction_log.flush.data.rate: - enabled: true - description: Total number of log bytes flushed. - unit: By/s - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction.rate: - enabled: true - description: Number of transactions started for the database (not including XTP-only transactions). - unit: "{transactions}/s" - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. - sqlserver.transaction.write.rate: - enabled: true - description: Number of transactions that wrote to the database and committed. - unit: "{transactions}/s" - gauge: - value_type: double - extended_documentation: This metric is only available when running on Windows. + input_type: string + attributes: [physical_filename, logical_filename, file_type, direction] + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. sqlserver.database.latency: enabled: false description: Total time that the users waited for I/O issued on this file. + stability: development unit: "s" sum: monotonic: true @@ -439,221 +392,351 @@ metrics: sqlserver.database.operations: enabled: false description: The number of operations issued on the file. + stability: development unit: "{operations}" sum: monotonic: true aggregation_temporality: cumulative value_type: int input_type: string - attributes: [ physical_filename, logical_filename, file_type, direction ] + attributes: [physical_filename, logical_filename, file_type, direction] extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.database.io: + sqlserver.database.tempdb.space: enabled: false - description: The number of bytes of I/O on this file. - unit: "By" + description: Total free space in temporary DB. + stability: development + unit: “KB” sum: - monotonic: true + monotonic: false aggregation_temporality: cumulative value_type: int - input_type: string - attributes: [ physical_filename, logical_filename, file_type, direction ] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.resource_pool.disk.operations: + attributes: [tempdb.state] + sqlserver.database.tempdb.version_store.size: enabled: false - description: The rate of operations issued. - unit: "{operations}/s" + description: TempDB version store size. + stability: development + unit: “KB” gauge: value_type: double - attributes: [ direction ] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.resource_pool.disk.throttled.read.rate: - enabled: false - description: The number of read operations that were throttled in the last second - unit: "{reads}/s" - gauge: - value_type: int - input_type: string attributes: [] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.resource_pool.disk.throttled.write.rate: + sqlserver.deadlock.rate: enabled: false - description: The number of write operations that were throttled in the last second - unit: "{writes}/s" + description: Total number of deadlocks. + stability: development + unit: “{deadlocks}/s” gauge: value_type: double - input_type: string attributes: [] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.processes.blocked: + sqlserver.index.search.rate: enabled: false - description: The number of processes that are currently blocked - unit: "{processes}" + description: Total number of index searches. + stability: development + unit: “{searches}/s” gauge: - value_type: int - input_type: string + value_type: double attributes: [] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.database.count: + sqlserver.lock.timeout.rate: enabled: false - description: The number of databases - unit: "{databases}" + description: Total number of lock timeouts. + stability: development + unit: “{timeouts}/s” gauge: - value_type: int - input_type: string - attributes: [database.status] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. - sqlserver.table.count: + value_type: double + attributes: [] + sqlserver.lock.wait.count: enabled: false - description: The number of tables. - unit: “{tables}” + description: Cumulative count of lock waits that occurred. + stability: development + unit: "{wait}" sum: + monotonic: true aggregation_temporality: cumulative - monotonic: false value_type: int - attributes: [table.state, table.status] - sqlserver.database.backup_or_restore.rate: + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.lock.wait.rate: + enabled: true + description: Number of lock requests resulting in a wait. + stability: development + unit: "{requests}/s" + gauge: + value_type: double + sqlserver.lock.wait_time.avg: + enabled: true + description: Average wait time for all lock requests that had to wait. + stability: development + unit: ms + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.login.rate: enabled: false - description: Total number of backups/restores. - unit: “{backups_or_restores}/s” + description: Total number of logins. + stability: development + unit: “{logins}/s” gauge: value_type: double attributes: [] - sqlserver.replica.data.rate: + sqlserver.logout.rate: enabled: false - description: Throughput rate of replica data. - unit: By/s + description: Total number of logouts. + stability: development + unit: “{logouts}/s” gauge: value_type: double - attributes: [replica.direction] - sqlserver.database.execution.errors: + attributes: [] + sqlserver.memory.grants.pending.count: enabled: false - description: Number of execution errors. - unit: “{errors}” - gauge: + description: Total number of memory grants pending. + stability: development + unit: “{grants}” + sum: + aggregation_temporality: cumulative + monotonic: false value_type: int attributes: [] + sqlserver.memory.usage: + enabled: false + description: Total memory in use. + stability: development + unit: “KB” + sum: + aggregation_temporality: cumulative + monotonic: false + value_type: double + attributes: [] + sqlserver.os.wait.duration: + enabled: false + description: Total wait time for this wait type + stability: development + unit: "s" + sum: + aggregation_temporality: cumulative + monotonic: true + value_type: double + attributes: [wait.category, wait.type] + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. sqlserver.page.buffer_cache.free_list.stalls.rate: enabled: false description: Number of free list stalls. + stability: development unit: “{stalls}/s” gauge: value_type: int attributes: [] - sqlserver.database.tempdb.space: - enabled: false - description: Total free space in temporary DB. - unit: “KB” - sum: - monotonic: false - aggregation_temporality: cumulative + sqlserver.page.buffer_cache.hit_ratio: + enabled: true + description: Pages found in the buffer pool without having to read from disk. + stability: development + unit: "%" + gauge: + value_type: double + sqlserver.page.checkpoint.flush.rate: + enabled: true + description: Number of pages flushed by operations requiring dirty pages to be flushed. + stability: development + unit: "{pages}/s" + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.page.lazy_write.rate: + enabled: true + description: Number of lazy writes moving dirty pages to disk. + stability: development + unit: "{writes}/s" + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.page.life_expectancy: + enabled: true + description: Time a page will stay in the buffer pool. + stability: development + unit: s + gauge: value_type: int - attributes: [tempdb.state] - sqlserver.database.full_scan.rate: + attributes: [performance_counter.object_name] + sqlserver.page.lookup.rate: enabled: false - description: The number of unrestricted full table or index scans. - unit: "{scans}/s" + description: Total number of page lookups. + stability: development + unit: “{lookups}/s” gauge: value_type: double attributes: [] - sqlserver.index.search.rate: - enabled: false - description: Total number of index searches. - unit: “{searches}/s” + sqlserver.page.operation.rate: + enabled: true + description: Number of physical database page operations issued. + stability: development + unit: "{operations}/s" gauge: value_type: double - attributes: [] - sqlserver.lock.timeout.rate: - enabled: false - description: Total number of lock timeouts. - unit: “{timeouts}/s” + attributes: [page.operations] + extended_documentation: This metric is only available when running on Windows. + sqlserver.page.split.rate: + enabled: true + description: Number of pages split as a result of overflowing index pages. + stability: development + unit: "{pages}/s" gauge: value_type: double - attributes: [] - sqlserver.login.rate: + extended_documentation: This metric is only available when running on Windows. + sqlserver.processes.blocked: enabled: false - description: Total number of logins. - unit: “{logins}/s” + description: The number of processes that are currently blocked + stability: development + unit: "{processes}" gauge: - value_type: double + value_type: int + input_type: string attributes: [] - sqlserver.logout.rate: + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.replica.data.rate: enabled: false - description: Total number of logouts. - unit: “{logouts}/s” + description: Throughput rate of replica data. + stability: development + unit: By/s gauge: value_type: double - attributes: [] - sqlserver.deadlock.rate: + attributes: [replica.direction] + sqlserver.resource_pool.disk.operations: enabled: false - description: Total number of deadlocks. - unit: “{deadlocks}/s” + description: The rate of operations issued. + stability: development + unit: "{operations}/s" gauge: value_type: double + attributes: [direction] + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.resource_pool.disk.throttled.read.rate: + enabled: false + description: The number of read operations that were throttled in the last second + stability: development + unit: "{reads}/s" + gauge: + value_type: int + input_type: string attributes: [] - sqlserver.transaction.mirror_write.rate: + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.resource_pool.disk.throttled.write.rate: enabled: false - description: Total number of mirror write transactions. - unit: “{transactions}/s” + description: The number of write operations that were throttled in the last second + stability: development + unit: "{writes}/s" gauge: value_type: double + input_type: string attributes: [] - sqlserver.memory.grants.pending.count: + extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + sqlserver.table.count: enabled: false - description: Total number of memory grants pending. - unit: “{grants}” + description: The number of tables. + stability: development + unit: “{tables}” sum: aggregation_temporality: cumulative monotonic: false value_type: int - attributes: [] - sqlserver.page.lookup.rate: - enabled: false - description: Total number of page lookups. - unit: “{lookups}/s” - gauge: - value_type: double - attributes: [] + attributes: [table.state, table.status] sqlserver.transaction.delay: enabled: false description: Time consumed in transaction delays. + stability: development unit: ms sum: aggregation_temporality: cumulative monotonic: false value_type: double attributes: [] - sqlserver.memory.usage: + sqlserver.transaction.mirror_write.rate: enabled: false - description: Total memory in use. - unit: “KB” - sum: - aggregation_temporality: cumulative - monotonic: false + description: Total number of mirror write transactions. + stability: development + unit: “{transactions}/s” + gauge: value_type: double attributes: [] - sqlserver.database.tempdb.version_store.size: - enabled: false - description: TempDB version store size. - unit: “KB” + sqlserver.transaction.rate: + enabled: true + description: Number of transactions started for the database (not including XTP-only transactions). + stability: development + unit: "{transactions}/s" gauge: value_type: double - attributes: [] - sqlserver.os.wait.duration: - enabled: false - description: Total wait time for this wait type - unit: "s" + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction.write.rate: + enabled: true + description: Number of transactions that wrote to the database and committed. + stability: development + unit: "{transactions}/s" + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.flush.data.rate: + enabled: true + description: Total number of log bytes flushed. + stability: development + unit: By/s + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.flush.rate: + enabled: true + description: Number of log flushes. + stability: development + unit: "{flushes}/s" + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.flush.wait.rate: + enabled: true + description: Number of commits waiting for a transaction log flush. + stability: development + unit: "{commits}/s" + gauge: + value_type: double + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.growth.count: + enabled: true + description: Total number of transaction log expansions for a database. + stability: development + unit: "{growths}" sum: + monotonic: true aggregation_temporality: cumulative + value_type: int + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.shrink.count: + enabled: true + description: Total number of transaction log shrinks for a database. + stability: development + unit: "{shrinks}" + sum: monotonic: true - value_type: double - attributes: [wait.category, wait.type] - extended_documentation: This metric is only available when the receiver is configured to directly connect to SQL Server. + aggregation_temporality: cumulative + value_type: int + extended_documentation: This metric is only available when running on Windows. + sqlserver.transaction_log.usage: + enabled: true + description: Percent of transaction log space used. + stability: development + unit: "%" + gauge: + value_type: int + extended_documentation: This metric is only available when running on Windows. + sqlserver.user.connection.count: + enabled: true + description: Number of users connected to the SQL Server. + stability: development + unit: "{connections}" + gauge: + value_type: int tests: config: goleak: ignore: - any: "github.com/godbus/dbus.(*Conn).inWorker" + any: + - "github.com/cihub/seelog.(*asyncLoopLogger).processQueue" # see https://github.com/cihub/seelog/issues/182 + - "github.com/godbus/dbus.(*Conn).inWorker" top: # Can be removed once the following issue is resolved: # https://github.com/snowflakedb/gosnowflake/issues/1369 diff --git a/metric-metadata/sshcheckreceiver.yaml b/metric-metadata/sshcheckreceiver.yaml index 452b039..730581b 100644 --- a/metric-metadata/sshcheckreceiver.yaml +++ b/metric-metadata/sshcheckreceiver.yaml @@ -3,15 +3,17 @@ type: sshcheck status: class: receiver stability: - alpha: [metrics] + beta: [metrics] distributions: [contrib] codeowners: - active: [nslaughter] + active: [ishaish103] + emeritus: [nslaughter] resource_attributes: ssh.endpoint: description: Full SSH endpoint type: string + enabled: false attributes: error.message: @@ -19,49 +21,55 @@ attributes: type: string metrics: - sshcheck.status: - description: 1 if the SSH client successfully connected, otherwise 0. - enabled: true - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - unit: "1" sshcheck.duration: description: Measures the duration of SSH connection. enabled: true + stability: development gauge: value_type: int unit: ms sshcheck.error: description: Records errors occurring during SSH check. enabled: true + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false unit: "{error}" attributes: [error.message] - sshcheck.sftp_status: - description: 1 if the SFTP server replied to request, otherwise 0. - enabled: false - sum: - value_type: int - aggregation_temporality: cumulative - monotonic: false - unit: "1" sshcheck.sftp_duration: description: Measures SFTP request duration. enabled: false + stability: development gauge: value_type: int unit: ms sshcheck.sftp_error: description: Records errors occurring during SFTP check. enabled: false + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: false unit: "{error}" attributes: [error.message] + sshcheck.sftp_status: + description: 1 if the SFTP server replied to request, otherwise 0. + enabled: false + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "1" + sshcheck.status: + description: 1 if the SSH client successfully connected, otherwise 0. + enabled: true + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "1" diff --git a/metric-metadata/stanza.yaml b/metric-metadata/stanza.yaml index d0edb4a..2cb15cd 100644 --- a/metric-metadata/stanza.yaml +++ b/metric-metadata/stanza.yaml @@ -1,7 +1,37 @@ +type: stanza + status: disable_codecov_badge: true class: pkg + stability: + beta: [logs] codeowners: active: [andrzej-stencel] emeritus: [djaglowski] seeking_new: true + +feature_gates: + - id: logs.assignKeys + stage: beta + description: >- + When enabled, allows usage of `assign_keys` transformer. + from_version: v0.93.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/30321 + - id: logs.jsonParserArray + stage: beta + description: >- + When enabled, allows usage of `json_array_parser`. + from_version: v0.93.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/30321 + - id: parser.uri.ecscompliant + stage: alpha + description: >- + When enabled resulting map will be in semconv compliant format. + from_version: v0.103.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/32906 + - id: stanza.synchronousLogEmitter + stage: alpha + description: >- + Prevents possible data loss in Stanza-based receivers by emitting logs synchronously. + from_version: v0.122.0 + reference_url: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/35456 diff --git a/metric-metadata/statsdreceiver.yaml b/metric-metadata/statsdreceiver.yaml index 9b59156..1dfa59a 100644 --- a/metric-metadata/statsdreceiver.yaml +++ b/metric-metadata/statsdreceiver.yaml @@ -13,6 +13,7 @@ telemetry: receiver_received_statsd_metrics: enabled: true description: Number of statsd metrics received. + stability: development unit: "1" sum: value_type: int diff --git a/metric-metadata/status.yaml b/metric-metadata/status.yaml index ddf54ca..5dd25ef 100644 --- a/metric-metadata/status.yaml +++ b/metric-metadata/status.yaml @@ -6,6 +6,6 @@ status: stability: development: [extension] codeowners: - active: [mwear] - emeritus: [jpkrohling] + active: [evan-bradley] + emeritus: [jpkrohling, mwear] seeking_new: true diff --git a/metric-metadata/stefexporter.yaml b/metric-metadata/stefexporter.yaml index 4460543..f9317f3 100644 --- a/metric-metadata/stefexporter.yaml +++ b/metric-metadata/stefexporter.yaml @@ -1,4 +1,5 @@ type: stef +display_name: STEF Exporter status: class: exporter diff --git a/metric-metadata/sumconnector.yaml b/metric-metadata/sumconnector.yaml index 7fbb6bf..12fe0b6 100644 --- a/metric-metadata/sumconnector.yaml +++ b/metric-metadata/sumconnector.yaml @@ -1,4 +1,5 @@ type: sum +display_name: Sum Connector status: class: connector diff --git a/metric-metadata/sumologicexporter.yaml b/metric-metadata/sumologicexporter.yaml index d609948..ee952b1 100644 --- a/metric-metadata/sumologicexporter.yaml +++ b/metric-metadata/sumologicexporter.yaml @@ -1,4 +1,5 @@ type: sumologic +display_name: Sumo Logic Exporter status: class: exporter @@ -6,8 +7,8 @@ status: beta: [metrics, logs, traces] distributions: [contrib] codeowners: - active: [rnishtala-sumo, chan-tim-sumo, echlebek, amdprophet] - emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek] + active: [rnishtala-sumo, pankaj101A, jagan2221] + emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek, chan-tim-sumo, echlebek, amdprophet] # TODO: Update the exporter to pass the tests tests: @@ -15,31 +16,35 @@ tests: telemetry: metrics: - exporter_requests_sent: + exporter_requests_bytes: enabled: true - description: Number of requests - unit: "1" + stability: development + description: Total size of requests (in bytes) + unit: By sum: value_type: int monotonic: true exporter_requests_duration: enabled: true + stability: development description: Duration of HTTP requests (in milliseconds) unit: ms sum: value_type: int monotonic: true - exporter_requests_bytes: + exporter_requests_records: enabled: true - description: Total size of requests (in bytes) - unit: By + stability: development + description: Total size of requests (in number of records) + unit: "{records}" sum: value_type: int monotonic: true - exporter_requests_records: + exporter_requests_sent: enabled: true - description: Total size of requests (in number of records) - unit: "{records}" + stability: development + description: Number of requests + unit: "1" sum: value_type: int monotonic: true diff --git a/metric-metadata/sumologicextension.yaml b/metric-metadata/sumologicextension.yaml index 588f2e4..190a88e 100644 --- a/metric-metadata/sumologicextension.yaml +++ b/metric-metadata/sumologicextension.yaml @@ -1,3 +1,4 @@ +display_name: Sumo Logic Extension type: sumologic status: @@ -6,8 +7,8 @@ status: alpha: [extension] distributions: [] codeowners: - active: [rnishtala-sumo, chan-tim-sumo, echlebek, amdprophet] - emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek] + active: [rnishtala-sumo, pankaj101A, jagan2221] + emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek, chan-tim-sumo, echlebek, amdprophet] # TODO: Update the extension to make the tests pass tests: diff --git a/metric-metadata/sumologicprocessor.yaml b/metric-metadata/sumologicprocessor.yaml index 346313d..441ebba 100644 --- a/metric-metadata/sumologicprocessor.yaml +++ b/metric-metadata/sumologicprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Sumo Logic Processor type: sumologic status: @@ -6,8 +7,8 @@ status: beta: [traces, metrics, logs] distributions: [contrib] codeowners: - active: [rnishtala-sumo, chan-tim-sumo, echlebek, amdprophet] - emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek] + active: [rnishtala-sumo, pankaj101A, jagan2221] + emeritus: [aboguszewski-sumo, kasia-kujawa, mat-rumian, sumo-drosiek, echlebek, chan-tim-sumo, amdprophet] tests: config: diff --git a/metric-metadata/syslogexporter.yaml b/metric-metadata/syslogexporter.yaml index ddb18a1..9990ccf 100644 --- a/metric-metadata/syslogexporter.yaml +++ b/metric-metadata/syslogexporter.yaml @@ -1,4 +1,5 @@ type: syslog +display_name: Syslog Exporter status: class: exporter diff --git a/metric-metadata/syslogreceiver.yaml b/metric-metadata/syslogreceiver.yaml index 18e4bad..e5d70e3 100644 --- a/metric-metadata/syslogreceiver.yaml +++ b/metric-metadata/syslogreceiver.yaml @@ -3,7 +3,7 @@ type: syslog status: class: receiver stability: - alpha: [logs] + beta: [logs] distributions: [contrib] codeowners: active: [andrzej-stencel] diff --git a/metric-metadata/system.yaml b/metric-metadata/system.yaml index aaabbcd..6e460d7 100644 --- a/metric-metadata/system.yaml +++ b/metric-metadata/system.yaml @@ -3,38 +3,42 @@ type: resourcedetectionprocessor/system parent: resourcedetection resource_attributes: - host.name: - description: The host.name - type: string - enabled: true - host.id: - description: The host.id + host.arch: + description: The host.arch type: string enabled: false - os.description: - description: Human readable OS version information. + host.cpu.cache.l2.size: + description: The host.cpu.cache.l2.size + type: int + enabled: false + host.cpu.family: + description: The host.cpu.family type: string enabled: false - os.type: - description: The os.type + host.cpu.model.id: + description: The host.cpu.model.id type: string - enabled: true - os.version: - description: The os.version + enabled: false + host.cpu.model.name: + description: The host.cpu.model.name type: string enabled: false - os.build.id: - description: The os.build.id + host.cpu.stepping: + description: The host.cpu.stepping type: string enabled: false - os.name: - description: The os.name + host.cpu.vendor.id: + description: The host.cpu.vendor.id type: string enabled: false - host.arch: - description: The host.arch + host.id: + description: The host.id type: string enabled: false + host.interface: + description: Network interfaces for the host + type: slice + enabled: false host.ip: description: IP addresses for the host type: slice @@ -43,31 +47,27 @@ resource_attributes: description: MAC addresses for the host type: slice enabled: false - host.interface: - description: Network interfaces for the host - type: slice - enabled: false - host.cpu.vendor.id: - description: The host.cpu.vendor.id + host.name: + description: The host.name type: string - enabled: false - host.cpu.family: - description: The host.cpu.family + enabled: true + os.build.id: + description: The os.build.id type: string enabled: false - host.cpu.model.id: - description: The host.cpu.model.id + os.description: + description: Human readable OS version information. type: string enabled: false - host.cpu.model.name: - description: The host.cpu.model.name + os.name: + description: The os.name type: string enabled: false - host.cpu.stepping: - description: The host.cpu.stepping + os.type: + description: The os.type + type: string + enabled: true + os.version: + description: The os.version type: string - enabled: false - host.cpu.cache.l2.size: - description: The host.cpu.cache.l2.size - type: int enabled: false diff --git a/metric-metadata/systemdreceiver.yaml b/metric-metadata/systemdreceiver.yaml index c4fc79a..45aa24d 100644 --- a/metric-metadata/systemdreceiver.yaml +++ b/metric-metadata/systemdreceiver.yaml @@ -3,10 +3,73 @@ type: systemd status: class: receiver stability: - development: [metrics] - distributions: [] + alpha: [metrics] + distributions: [contrib] codeowners: active: [atoulme] emeritus: [Hemansh31] + unsupported_platforms: [darwin, windows] + +resource_attributes: + systemd.unit.name: + description: Name of the systemd unit + type: string + enabled: true + +attributes: + cpu.mode: + description: Breakdown of CPU usage by type. + type: string + enum: [system, user] + + systemd.unit.active_state: + description: The active state of the unit (https://www.freedesktop.org/software/systemd/man/latest/systemd.html#Units) + type: string + enum: + - active + - reloading + - inactive + - failed + - activating + - deactivating + - maintenance + - refreshing + +metrics: + systemd.service.cpu.time: + description: Total CPU time spent by this service. + enabled: true + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + unit: us + attributes: [cpu.mode] + + systemd.service.restarts: + description: Number of automatic restarts for the service. + extended_documentation: | + This exposes services' `NRestarts` property as a metric. This only tracks + automatic service restarts (restarts when the process exits), and does + not include manual restarts (e.g. from `systemctl restart`). + enabled: false + stability: development + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: true + unit: "{restarts}" + + systemd.unit.state: + description: 1 if the check resulted in active_state matching the current state, otherwise 0. + enabled: true + stability: alpha + sum: + value_type: int + aggregation_temporality: cumulative + monotonic: false + unit: "1" + attributes: [systemd.unit.active_state] tests: diff --git a/metric-metadata/systemscraper.yaml b/metric-metadata/systemscraper.yaml index 68b27e0..e9748e1 100644 --- a/metric-metadata/systemscraper.yaml +++ b/metric-metadata/systemscraper.yaml @@ -13,6 +13,7 @@ sem_conv_version: 1.9.0 metrics: system.uptime: enabled: true + stability: development description: The time the system has been running unit: s gauge: diff --git a/metric-metadata/tailsamplingprocessor.yaml b/metric-metadata/tailsamplingprocessor.yaml index 482d74b..2a9b383 100644 --- a/metric-metadata/tailsamplingprocessor.yaml +++ b/metric-metadata/tailsamplingprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Tail Sampling Processor type: tail_sampling status: @@ -6,40 +7,90 @@ status: beta: [traces] distributions: [contrib, k8s] codeowners: - active: [portertech] + active: [portertech, Logiraptor, jmacd] emeritus: [jpkrohling] seeking_new: true tests: config: +attributes: + decision: + description: The sampling decision + enum: [sampled, not_sampled, dropped] + type: string + + policy: + description: Name of the policy + type: string + + sampled: + description: Whether the sampling decision was sampled or not, false can mean either not sampled or dropped + type: bool + telemetry: metrics: - processor_tail_sampling_sampling_decision_latency: - description: Latency (in microseconds) of a given sampling policy - unit: µs + processor_tail_sampling_count_spans_sampled: + description: Count of spans that were sampled or not per sampling policy + stability: development + unit: "{spans}" enabled: true - histogram: + sum: value_type: int - bucket_boundaries: [1, 2, 5, 10, 25, 50, 75, 100, 150, 200, 300, 400, 500, 750, 1000, 2000, 3000, 4000, 5000, 10000, 20000, 30000, 50000] + monotonic: true + attributes: [policy, sampled, decision] + + processor_tail_sampling_count_traces_sampled: + description: Count of traces that were sampled or not per sampling policy + stability: development + unit: "{traces}" + enabled: true + sum: + value_type: int + monotonic: true + attributes: [policy, sampled, decision] + + processor_tail_sampling_early_releases_from_cache_decision: + description: Number of spans that were able to be immediately released due to a decision cache hit. + stability: development + unit: "{spans}" + enabled: true + sum: + value_type: int + monotonic: true + attributes: [sampled] + + processor_tail_sampling_global_count_traces_sampled: + description: Global count of traces that were sampled or not by at least one policy + stability: development + unit: "{traces}" + enabled: true + sum: + value_type: int + monotonic: true + attributes: [sampled, decision] + + processor_tail_sampling_new_trace_id_received: + description: Counts the arrival of new traces + stability: development + unit: "{traces}" + enabled: true + sum: + value_type: int + monotonic: true processor_tail_sampling_sampling_decision_timer_latency: description: Latency (in milliseconds) of each run of the sampling decision timer + stability: development unit: ms enabled: true histogram: value_type: int bucket_boundaries: [1, 2, 5, 10, 25, 50, 75, 100, 150, 200, 300, 400, 500, 750, 1000, 2000, 3000, 4000, 5000, 10000, 20000, 30000, 50000] - processor_tail_sampling_sampling_trace_removal_age: - description: Time (in seconds) from arrival of a new trace until its removal from memory - unit: s - enabled: true - histogram: - value_type: int - processor_tail_sampling_sampling_late_span_age: description: Time (in seconds) from the sampling decision was taken and the arrival of a late span + stability: development unit: s enabled: true histogram: @@ -47,62 +98,62 @@ telemetry: processor_tail_sampling_sampling_policy_evaluation_error: description: Count of sampling policy evaluation errors + stability: development unit: "{errors}" enabled: true sum: value_type: int monotonic: true - processor_tail_sampling_count_traces_sampled: - description: Count of traces that were sampled or not per sampling policy - unit: "{traces}" + processor_tail_sampling_sampling_policy_execution_count: + description: Total number of executions of a specific sampling policy + stability: development + unit: "{executions}" enabled: true sum: value_type: int monotonic: true + attributes: [policy] - processor_tail_sampling_count_spans_sampled: - description: Count of spans that were sampled or not per sampling policy - unit: "{spans}" - enabled: true - sum: - value_type: int - monotonic: true - - processor_tail_sampling_global_count_traces_sampled: - description: Global count of traces that were sampled or not by at least one policy - unit: "{traces}" + processor_tail_sampling_sampling_policy_execution_time_sum: + description: Total time spent (in microseconds) executing a specific sampling policy + stability: development + unit: µs enabled: true sum: value_type: int monotonic: true + attributes: [policy] processor_tail_sampling_sampling_trace_dropped_too_early: description: Count of traces that needed to be dropped before the configured wait time + stability: development unit: "{traces}" enabled: true sum: value_type: int monotonic: true - processor_tail_sampling_new_trace_id_received: - description: Counts the arrival of new traces - unit: "{traces}" + processor_tail_sampling_sampling_trace_removal_age: + description: Time (in seconds) from arrival of a new trace until its removal from memory + stability: development + unit: s enabled: true - sum: + histogram: value_type: int - monotonic: true processor_tail_sampling_sampling_traces_on_memory: description: Tracks the number of traces current on memory + stability: development unit: "{traces}" enabled: true gauge: value_type: int - processor_tail_sampling_early_releases_from_cache_decision: - description: Number of spans that were able to be immediately released due to a decision cache hit. - unit: "{spans}" + processor_tail_sampling_traces_dropped_too_large: + description: Count of traces that were dropped because they were too large + stability: development + unit: "{traces}" enabled: true sum: value_type: int diff --git a/metric-metadata/tcpcheckreceiver.yaml b/metric-metadata/tcpcheckreceiver.yaml index a45f2e6..5ee55f6 100644 --- a/metric-metadata/tcpcheckreceiver.yaml +++ b/metric-metadata/tcpcheckreceiver.yaml @@ -23,23 +23,26 @@ metrics: tcpcheck.duration: description: Measures the duration of TCP connection. enabled: true + stability: development gauge: value_type: int unit: ms attributes: [tcpcheck.endpoint] - tcpcheck.status: - description: 1 if the TCP client successfully connected, otherwise 0. - enabled: true - gauge: - value_type: int - unit: "1" - attributes: [tcpcheck.endpoint] tcpcheck.error: description: Records errors occurring during TCP check. enabled: true + stability: development sum: value_type: int aggregation_temporality: cumulative monotonic: true - unit: "{error}" - attributes: [tcpcheck.endpoint, error.code] \ No newline at end of file + unit: "{errors}" + attributes: [tcpcheck.endpoint, error.code] + tcpcheck.status: + description: 1 if the TCP client successfully connected, otherwise 0. + enabled: true + stability: development + gauge: + value_type: int + unit: "1" + attributes: [tcpcheck.endpoint] diff --git a/metric-metadata/telemetrygen.yaml b/metric-metadata/telemetrygen.yaml index 90042dd..0d316bb 100644 --- a/metric-metadata/telemetrygen.yaml +++ b/metric-metadata/telemetrygen.yaml @@ -7,4 +7,4 @@ status: alpha: [traces] development: [metrics, logs] codeowners: - active: [mx-psi, codeboten, Erog38] + active: [mx-psi, codeboten, Erog38, bogdan-st] diff --git a/metric-metadata/tencentcloudlogserviceexporter.yaml b/metric-metadata/tencentcloudlogserviceexporter.yaml index b63ded8..7936d37 100644 --- a/metric-metadata/tencentcloudlogserviceexporter.yaml +++ b/metric-metadata/tencentcloudlogserviceexporter.yaml @@ -1,4 +1,5 @@ type: tencentcloud_logservice +display_name: TencentCloud LogService Exporter status: class: exporter diff --git a/metric-metadata/testbed.yaml b/metric-metadata/testbed.yaml index d33786a..6500827 100644 --- a/metric-metadata/testbed.yaml +++ b/metric-metadata/testbed.yaml @@ -1,3 +1,4 @@ status: codeowners: - active: [open-telemetry/collector-approvers] \ No newline at end of file + active: [open-telemetry/collector-approvers] + class: pkg diff --git a/metric-metadata/textencodingextension.yaml b/metric-metadata/textencodingextension.yaml index 110177a..a0196e9 100644 --- a/metric-metadata/textencodingextension.yaml +++ b/metric-metadata/textencodingextension.yaml @@ -1,13 +1,12 @@ +display_name: Text Encoding Extension type: text_encoding +description: The `text_encoding` extension is an encoding extension that can unmarshal and marshal logs. + status: - disable_codecov_badge: true class: extension stability: - development: [extension] - distributions: [] + beta: [extension] + distributions: [contrib] codeowners: active: [MovieStoreGuy, atoulme] - -tests: - config: diff --git a/metric-metadata/tinybirdexporter.yaml b/metric-metadata/tinybirdexporter.yaml new file mode 100644 index 0000000..02d8104 --- /dev/null +++ b/metric-metadata/tinybirdexporter.yaml @@ -0,0 +1,26 @@ +type: tinybird +display_name: Tinybird Exporter + +status: + class: exporter + stability: + alpha: [logs, metrics, traces] + distributions: [contrib] + codeowners: + active: [mx-psi, jordivilaseca, MoreraAlejandro] + +tests: + config: + endpoint: "http://localhost:1234" + token: "test-token" + metrics: + gauge: + datasource: "metrics_gauge" + sum: + datasource: "metrics_sum" + histogram: + datasource: "metrics_histogram" + exponential_histogram: + datasource: "metrics_exponential_histogram" + traces::datasource: "traces" + logs::datasource: "logs" \ No newline at end of file diff --git a/metric-metadata/tlscheckreceiver.yaml b/metric-metadata/tlscheckreceiver.yaml index 1fb8bea..743809b 100644 --- a/metric-metadata/tlscheckreceiver.yaml +++ b/metric-metadata/tlscheckreceiver.yaml @@ -15,12 +15,12 @@ resource_attributes: type: string attributes: - tlscheck.x509.issuer: - description: The entity that issued the certificate. - type: string tlscheck.x509.cn: description: The commonName in the subject of the certificate. type: string + tlscheck.x509.issuer: + description: The entity that issued the certificate. + type: string tlscheck.x509.san: description: The Subject Alternative Name of the certificate. type: slice @@ -28,8 +28,9 @@ attributes: metrics: tlscheck.time_left: description: Time in seconds until certificate expiry, as specified by `NotAfter` field in the x.509 certificate. Negative values represent time in seconds since expiration. + stability: development enabled: true gauge: value_type: int unit: "s" - attributes: [tlscheck.x509.issuer, tlscheck.x509.cn, tlscheck.x509.san] \ No newline at end of file + attributes: [tlscheck.x509.issuer, tlscheck.x509.cn, tlscheck.x509.san] diff --git a/metric-metadata/transformprocessor.yaml b/metric-metadata/transformprocessor.yaml index 7e4186e..ccbc7b6 100644 --- a/metric-metadata/transformprocessor.yaml +++ b/metric-metadata/transformprocessor.yaml @@ -1,3 +1,4 @@ +display_name: Transform Processor type: transform status: @@ -8,8 +9,8 @@ status: distributions: [contrib, k8s] warnings: [Unsound Transformations, Identity Conflict, Orphaned Telemetry, Other] codeowners: - active: [TylerHelmuth, evan-bradley, edmocosta] - emeritus: [anuraaga, kentquirk, bogdandrutu] + active: [TylerHelmuth, evan-bradley, edmocosta, bogdandrutu] + emeritus: [anuraaga, kentquirk] seeking_new: true tests: diff --git a/metric-metadata/unrollprocessor.yaml b/metric-metadata/unrollprocessor.yaml new file mode 100644 index 0000000..a358653 --- /dev/null +++ b/metric-metadata/unrollprocessor.yaml @@ -0,0 +1,17 @@ +display_name: Unroll Processor +type: unroll + +description: | + The Unroll Processor takes log records with slice bodies and expands each element of the slice into its own log + record. This allows for better processing and analysis of structured log data that contains arrays or lists. + +status: + class: processor + stability: + alpha: [logs] + distributions: [contrib] + codeowners: + active: [axw, schmikei, rnishtala-sumo] +tests: + config: + recursive: false diff --git a/metric-metadata/upcloud.yaml b/metric-metadata/upcloud.yaml new file mode 100644 index 0000000..7977dff --- /dev/null +++ b/metric-metadata/upcloud.yaml @@ -0,0 +1,30 @@ +type: upclouddetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [dashpole, paulojmdias] + +resource_attributes: + cloud.provider: + description: The cloud.provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/vcenterreceiver.yaml b/metric-metadata/vcenterreceiver.yaml index b9840c1..61022c6 100644 --- a/metric-metadata/vcenterreceiver.yaml +++ b/metric-metadata/vcenterreceiver.yaml @@ -6,60 +6,81 @@ status: alpha: [metrics] distributions: [contrib] codeowners: - active: [schmikei, StefanKurek] + active: [schmikei, ishleenk17] + emeritus: [StefanKurek] seeking_new: true resource_attributes: + vcenter.cluster.name: + description: The name of the vCenter cluster. + enabled: true + type: string vcenter.datacenter.name: description: The name of the vCenter datacenter. enabled: true type: string - vcenter.cluster.name: - description: The name of the vCenter cluster. + vcenter.datastore.name: + description: The name of the vCenter datastore. enabled: true type: string vcenter.host.name: description: The hostname of the vCenter ESXi host. enabled: true type: string - vcenter.resource_pool.name: - description: The name of the resource pool. - enabled: true - type: string vcenter.resource_pool.inventory_path: description: The inventory path of the resource pool. enabled: true type: string - vcenter.virtual_app.name: - description: The name of the vApp. + vcenter.resource_pool.name: + description: The name of the resource pool. enabled: true type: string vcenter.virtual_app.inventory_path: description: The inventory path of the vApp. enabled: true type: string - vcenter.datastore.name: - description: The name of the vCenter datastore. - enabled: true - type: string - vcenter.vm.name: - description: The name of the virtual machine. + vcenter.virtual_app.name: + description: The name of the vApp. enabled: true type: string vcenter.vm.id: description: The instance UUID of the virtual machine. enabled: true type: string - vcenter.vm_template.name: - description: The name of the virtual machine template. + vcenter.vm.name: + description: The name of the virtual machine. enabled: true type: string vcenter.vm_template.id: description: The instance UUID of the virtual machine template. enabled: true type: string + vcenter.vm_template.name: + description: The name of the virtual machine template. + enabled: true + type: string attributes: + cpu_reservation_type: + type: string + enum: + - total + - used + description: The type of CPU reservation for the host. + cpu_state: + description: CPU time spent in idle, ready or idle state. + type: string + enum: + - "idle" + - "ready" + - "wait" + disk_direction: + name_override: direction + description: The direction of disk latency. + type: string + enum: + - read + - write disk_state: description: The state of storage and whether it is already allocated or free. type: string @@ -72,27 +93,15 @@ attributes: enum: - virtual - physical - memory_usage_type: - name_override: type - description: The type of memory usage. - type: string - enum: - - guest - - host - - overhead - memory_granted_type: - name_override: type - description: The type of memory granted. - type: string - enum: - - private - - shared - cpu_reservation_type: + entity_status: + name_override: status + description: The current status of the managed entity. type: string enum: - - total - - used - description: The type of CPU reservation for the host. + - "red" + - "yellow" + - "green" + - "gray" host_effective: type: bool name_override: effective @@ -106,20 +115,25 @@ attributes: - "off" - "standby" - "unknown" - cpu_state: - description: CPU time spent in idle, ready or idle state. + memory_granted_type: + name_override: type + description: The type of memory granted. type: string enum: - - "idle" - - "ready" - - "wait" - disk_direction: - name_override: direction - description: The direction of disk latency. + - private + - shared + memory_usage_type: + name_override: type + description: The type of memory usage. type: string enum: - - read - - write + - guest + - host + - overhead + object_name: + name_override: object + description: The object on the virtual machine or host that is being reported on. + type: string throughput_direction: name_override: direction description: The direction of network throughput. @@ -136,26 +150,6 @@ attributes: - "off" - "suspended" - "unknown" - entity_status: - name_override: status - description: The current status of the managed entity. - type: string - enum: - - "red" - - "yellow" - - "green" - - "gray" - object_name: - name_override: object - description: The object on the virtual machine or host that is being reported on. - type: string - vsan_throughput_direction: - name_override: direction - description: The type of vSAN throughput. - type: string - enum: - - read - - write vsan_latency_type: name_override: type description: The type of vSAN latency. @@ -172,110 +166,70 @@ attributes: - write - unmap + vsan_throughput_direction: + name_override: direction + description: The type of vSAN throughput. + type: string + enum: + - read + - write + metrics: - vcenter.datacenter.cluster.count: - enabled: true - description: The number of clusters in the datacenter. - unit: "{clusters}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [entity_status] - vcenter.datacenter.host.count: - enabled: true - description: The number of hosts in the datacenter. - unit: "{hosts}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [entity_status, host_power_state] - vcenter.datacenter.vm.count: - enabled: true - description: The number of VM's in the datacenter. - unit: "{virtual_machines}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [entity_status, vm_count_power_state] - vcenter.datacenter.datastore.count: - enabled: true - description: The number of datastores in the datacenter. - unit: "{datastores}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [] - vcenter.datacenter.disk.space: - enabled: true - description: The amount of available and used disk space in the datacenter. - unit: "By" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [disk_state] - vcenter.datacenter.cpu.limit: + vcenter.cluster.cpu.effective: enabled: true - description: The total amount of CPU available to the datacenter. + description: The effective CPU available to the cluster. This value excludes CPU from hosts in maintenance mode or are unresponsive. + stability: development unit: "MHz" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.datacenter.memory.limit: - enabled: true - description: The total amount of memory available to the datacenter. - unit: "By" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [] vcenter.cluster.cpu.limit: enabled: true description: The amount of CPU available to the cluster. + stability: development unit: "MHz" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.cluster.cpu.effective: + vcenter.cluster.host.count: enabled: true - description: The effective CPU available to the cluster. This value excludes CPU from hosts in maintenance mode or are unresponsive. - unit: "MHz" + description: The number of hosts in the cluster. + stability: development + unit: "{hosts}" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [] - vcenter.cluster.memory.limit: + attributes: [host_effective] + vcenter.cluster.memory.effective: enabled: true - description: The available memory of the cluster. + description: The effective available memory of the cluster. + stability: development unit: By sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.cluster.memory.effective: + extended_documentation: This value excludes memory from hosts that are either in maintenance mode or are unresponsive. It also excludes memory used by the VMware Service Console. + vcenter.cluster.memory.limit: enabled: true - description: The effective available memory of the cluster. + description: The available memory of the cluster. + stability: development unit: By sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - extended_documentation: This value excludes memory from hosts that are either in maintenance mode or are unresponsive. It also excludes memory used by the VMware Service Console. vcenter.cluster.vm.count: enabled: true description: The number of virtual machines in the cluster. + stability: development unit: "{virtual_machines}" sum: monotonic: false @@ -285,84 +239,137 @@ metrics: vcenter.cluster.vm_template.count: enabled: true description: The number of virtual machine templates in the cluster. + stability: development unit: "{virtual_machine_templates}" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.cluster.host.count: - enabled: true - description: The number of hosts in the cluster. - unit: "{hosts}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [host_effective] - vcenter.cluster.vsan.throughput: + vcenter.cluster.vsan.congestions: enabled: true - description: The vSAN throughput of a cluster. - unit: "By/s" + description: The congestions of IOs generated by all vSAN clients in the cluster. + stability: development + unit: "{congestions/s}" gauge: value_type: double - attributes: [vsan_throughput_direction] - vcenter.cluster.vsan.operations: - enabled: true - description: The vSAN IOPs of a cluster. - unit: "{operations/s}" - gauge: - value_type: int - attributes: [vsan_operation_type] + attributes: [] vcenter.cluster.vsan.latency.avg: enabled: true description: The overall cluster latency while accessing vSAN storage. + stability: development unit: "us" gauge: value_type: int attributes: [vsan_latency_type] - vcenter.cluster.vsan.congestions: + vcenter.cluster.vsan.operations: enabled: true - description: The congestions of IOs generated by all vSAN clients in the cluster. - unit: "{congestions/s}" + description: The vSAN IOPs of a cluster. + stability: development + unit: "{operations/s}" + gauge: + value_type: int + attributes: [vsan_operation_type] + vcenter.cluster.vsan.throughput: + enabled: true + description: The vSAN throughput of a cluster. + stability: development + unit: "By/s" gauge: value_type: double - attributes: [] - vcenter.datastore.disk.usage: + attributes: [vsan_throughput_direction] + vcenter.datacenter.cluster.count: enabled: true - description: The amount of space in the datastore. - unit: By + description: The number of clusters in the datacenter. + stability: development + unit: "{clusters}" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [disk_state] - vcenter.datastore.disk.utilization: + attributes: [entity_status] + vcenter.datacenter.cpu.limit: enabled: true - description: The utilization of the datastore. - unit: "%" - gauge: - value_type: double + description: The total amount of CPU available to the datacenter. + stability: development + unit: "MHz" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative attributes: [] - vcenter.host.cpu.utilization: + vcenter.datacenter.datastore.count: enabled: true - description: The CPU utilization of the host system. - unit: "%" - gauge: - value_type: double + description: The number of datastores in the datacenter. + stability: development + unit: "{datastores}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative attributes: [] - vcenter.host.cpu.usage: + vcenter.datacenter.disk.space: enabled: true - description: The amount of CPU used by the host. - unit: "MHz" + description: The amount of available and used disk space in the datacenter. + stability: development + unit: "By" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [disk_state] + vcenter.datacenter.host.count: + enabled: true + description: The number of hosts in the datacenter. + stability: development + unit: "{hosts}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [entity_status, host_power_state] + vcenter.datacenter.memory.limit: + enabled: true + description: The total amount of memory available to the datacenter. + stability: development + unit: "By" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] + vcenter.datacenter.vm.count: + enabled: true + description: The number of VM's in the datacenter. + stability: development + unit: "{virtual_machines}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [entity_status, vm_count_power_state] + vcenter.datastore.disk.usage: + enabled: true + description: The amount of space in the datastore. + stability: development + unit: By + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [disk_state] + vcenter.datastore.disk.utilization: + enabled: true + description: The utilization of the datastore. + stability: development + unit: "%" + gauge: + value_type: double + attributes: [] vcenter.host.cpu.capacity: enabled: true description: Total CPU capacity of the host system. + stability: development unit: "MHz" sum: monotonic: false @@ -372,25 +379,35 @@ metrics: vcenter.host.cpu.reserved: enabled: true description: The CPU of the host reserved for use by virtual machines. + stability: development unit: "MHz" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [cpu_reservation_type] - vcenter.host.disk.throughput: + vcenter.host.cpu.usage: enabled: true - description: Average number of kilobytes read from or written to the disk each second. - unit: "{KiBy/s}" + description: The amount of CPU used by the host. + stability: development + unit: "MHz" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [disk_direction, object_name] - extended_documentation: As measured over the most recent 20s interval. Aggregated disk I/O rate. Requires Performance Level 4. + attributes: [] + vcenter.host.cpu.utilization: + enabled: true + description: The CPU utilization of the host system. + stability: development + unit: "%" + gauge: + value_type: double + attributes: [] vcenter.host.disk.latency.avg: enabled: true description: The latency of operations to the host system's disk. + stability: development unit: ms gauge: value_type: int @@ -399,58 +416,64 @@ metrics: vcenter.host.disk.latency.max: enabled: true description: Highest latency value across all disks used by the host. + stability: development unit: ms gauge: value_type: int attributes: [object_name] extended_documentation: As measured over the most recent 20s interval. Requires Performance Level 3. - vcenter.host.memory.utilization: - enabled: true - description: The percentage of the host system's memory capacity that is being utilized. - unit: "%" - gauge: - value_type: double - attributes: [] - vcenter.host.memory.usage: + vcenter.host.disk.throughput: enabled: true - description: The amount of memory the host system is using. - unit: MiBy + description: Average number of kilobytes read from or written to the disk each second. + stability: development + unit: "{KiBy/s}" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [] + attributes: [disk_direction, object_name] + extended_documentation: As measured over the most recent 20s interval. Aggregated disk I/O rate. Requires Performance Level 4. vcenter.host.memory.capacity: enabled: false description: Total memory capacity of the host system. + stability: development unit: MiBy sum: monotonic: false value_type: double aggregation_temporality: cumulative attributes: [] - vcenter.host.network.throughput: + vcenter.host.memory.usage: enabled: true - description: The amount of data that was transmitted or received over the network by the host. - unit: "{KiBy/s}" + description: The amount of memory the host system is using. + stability: development + unit: MiBy sum: monotonic: false value_type: int aggregation_temporality: cumulative + attributes: [] + vcenter.host.memory.utilization: + enabled: true + description: The percentage of the host system's memory capacity that is being utilized. + stability: development + unit: "%" + gauge: + value_type: double + attributes: [] + vcenter.host.network.packet.drop.rate: + enabled: true + description: The rate of packets dropped across each physical NIC (network interface controller) instance on the host. + stability: development + unit: "{packets/s}" + gauge: + value_type: double attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.host.network.usage: - enabled: true - description: The sum of the data transmitted and received for all the NIC instances of the host. - unit: "{KiBy/s}" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [object_name] vcenter.host.network.packet.error.rate: enabled: true description: The rate of packet errors transmitted or received on the host network. + stability: development unit: "{errors/s}" gauge: value_type: double @@ -459,81 +482,93 @@ metrics: vcenter.host.network.packet.rate: enabled: true description: The rate of packets transmitted or received across each physical NIC (network interface controller) instance on the host. + stability: development unit: "{packets/s}" gauge: value_type: double attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.host.network.packet.drop.rate: + vcenter.host.network.throughput: enabled: true - description: The rate of packets dropped across each physical NIC (network interface controller) instance on the host. - unit: "{packets/s}" - gauge: - value_type: double + description: The amount of data that was transmitted or received over the network by the host. + stability: development + unit: "{KiBy/s}" + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.host.vsan.throughput: - enabled: true - description: The vSAN throughput of a host. - unit: "By/s" - gauge: - value_type: double - attributes: [vsan_throughput_direction] - extended_documentation: As measured over the most recent 5m interval. - vcenter.host.vsan.operations: + vcenter.host.network.usage: enabled: true - description: The vSAN IOPs of a host. - unit: "{operations/s}" - gauge: + description: The sum of the data transmitted and received for all the NIC instances of the host. + stability: development + unit: "{KiBy/s}" + sum: + monotonic: false value_type: int - attributes: [vsan_operation_type] - extended_documentation: As measured over the most recent 5m interval. - vcenter.host.vsan.latency.avg: + aggregation_temporality: cumulative + attributes: [object_name] + vcenter.host.vsan.cache.hit_rate: enabled: true - description: The host latency while accessing vSAN storage. - unit: "us" + description: The host's read IOs which could be satisfied by the local client cache. + stability: development + unit: "%" gauge: value_type: int - attributes: [vsan_latency_type] + attributes: [] extended_documentation: As measured over the most recent 5m interval. vcenter.host.vsan.congestions: enabled: true description: The congestions of IOs generated by all vSAN clients in the host. + stability: development unit: "{congestions/s}" gauge: value_type: double attributes: [] extended_documentation: As measured over the most recent 5m interval. - vcenter.host.vsan.cache.hit_rate: + vcenter.host.vsan.latency.avg: enabled: true - description: The host's read IOs which could be satisfied by the local client cache. - unit: "%" + description: The host latency while accessing vSAN storage. + stability: development + unit: "us" gauge: value_type: int - attributes: [] + attributes: [vsan_latency_type] extended_documentation: As measured over the most recent 5m interval. - vcenter.resource_pool.memory.usage: + vcenter.host.vsan.operations: enabled: true - description: The usage of the memory by the resource pool. - unit: MiBy - sum: - monotonic: false + description: The vSAN IOPs of a host. + stability: development + unit: "{operations/s}" + gauge: value_type: int - aggregation_temporality: cumulative - attributes: [memory_usage_type] - vcenter.resource_pool.memory.shares: + attributes: [vsan_operation_type] + extended_documentation: As measured over the most recent 5m interval. + vcenter.host.vsan.throughput: enabled: true - description: The amount of shares of memory in the resource pool. + description: The vSAN throughput of a host. + stability: development + unit: "By/s" + gauge: + value_type: double + attributes: [vsan_throughput_direction] + extended_documentation: As measured over the most recent 5m interval. + vcenter.resource_pool.cpu.shares: + enabled: true + description: The amount of shares of CPU in the resource pool. + stability: development unit: "{shares}" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.resource_pool.memory.swapped: + vcenter.resource_pool.cpu.usage: enabled: true - description: The amount of memory that is granted to VMs in the resource pool from the host's swap space. - unit: MiBy + description: The usage of the CPU used by the resource pool. + stability: development + unit: "MHz" sum: monotonic: false value_type: int @@ -542,6 +577,7 @@ metrics: vcenter.resource_pool.memory.ballooned: enabled: true description: The amount of memory in a resource pool that is ballooned due to virtualization. + stability: development unit: MiBy sum: monotonic: false @@ -551,59 +587,136 @@ metrics: vcenter.resource_pool.memory.granted: enabled: true description: The amount of memory that is granted to VMs in the resource pool from shared and non-shared host memory. + stability: development unit: MiBy sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [memory_granted_type] - vcenter.resource_pool.cpu.usage: + vcenter.resource_pool.memory.shares: enabled: true - description: The usage of the CPU used by the resource pool. - unit: "MHz" + description: The amount of shares of memory in the resource pool. + stability: development + unit: "{shares}" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.resource_pool.cpu.shares: + vcenter.resource_pool.memory.swapped: enabled: true - description: The amount of shares of CPU in the resource pool. - unit: "{shares}" + description: The amount of memory that is granted to VMs in the resource pool from the host's swap space. + stability: development + unit: MiBy sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] + vcenter.resource_pool.memory.usage: + enabled: true + description: The usage of the memory by the resource pool. + stability: development + unit: MiBy + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [memory_usage_type] + vcenter.vm.cpu.readiness: + enabled: true + description: Percentage of time that the virtual machine was ready, but could not get scheduled to run on the physical CPU. + stability: development + unit: "%" + gauge: + value_type: int + attributes: [] vcenter.vm.cpu.time: enabled: false - description: CPU time spent in idle, ready or wait state. + description: CPU time spent in idle, ready or wait state. + stability: development unit: "%" gauge: - value_type: double + value_type: double attributes: [cpu_state, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.vm.memory.ballooned: + vcenter.vm.cpu.usage: enabled: true - description: The amount of memory that is ballooned due to virtualization. - unit: MiBy + description: The amount of CPU used by the VM. + stability: development + unit: "MHz" sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.vm.memory.granted: - enabled: false - description: The amount of memory that is granted to a VM. - unit: MiBy + vcenter.vm.cpu.utilization: + enabled: true + description: The CPU utilization of the VM. + stability: development + unit: "%" + gauge: + value_type: double + attributes: [] + vcenter.vm.disk.latency.avg: + enabled: true + description: The latency of operations to the virtual machine's disk. + stability: development + unit: ms + gauge: + value_type: int + attributes: [disk_direction, disk_type, object_name] + extended_documentation: Requires Performance Counter level 2 for metric to populate. As measured over the most recent 20s interval. + vcenter.vm.disk.latency.max: + enabled: true + description: The highest reported total latency (device and kernel times) over an interval of 20 seconds. + stability: development + unit: ms + gauge: + value_type: int + attributes: [object_name] + vcenter.vm.disk.throughput: + enabled: true + description: Average number of kilobytes read from or written to the virtual disk each second. + stability: development + unit: "{KiBy/s}" + gauge: + value_type: int + attributes: [disk_direction, object_name] + extended_documentation: As measured over the most recent 20s interval. Requires Performance Level 2. + vcenter.vm.disk.usage: + enabled: true + description: The amount of storage space used by the virtual machine. + stability: development + unit: By sum: monotonic: false value_type: int aggregation_temporality: cumulative + attributes: [disk_state] + vcenter.vm.disk.utilization: + enabled: true + description: The utilization of storage on the virtual machine. + stability: development + unit: "%" + gauge: + value_type: double attributes: [] - vcenter.vm.memory.usage: + vcenter.vm.memory.ballooned: enabled: true - description: The amount of memory that is used by the virtual machine. + description: The amount of memory that is ballooned due to virtualization. + stability: development + unit: MiBy + sum: + monotonic: false + value_type: int + aggregation_temporality: cumulative + attributes: [] + vcenter.vm.memory.granted: + enabled: false + description: The amount of memory that is granted to a VM. + stability: development unit: MiBy sum: monotonic: false @@ -613,6 +726,7 @@ metrics: vcenter.vm.memory.swapped: enabled: true description: The portion of memory that is granted to this VM from the host's swap space. + stability: development unit: MiBy sum: monotonic: false @@ -622,64 +736,35 @@ metrics: vcenter.vm.memory.swapped_ssd: enabled: true description: The amount of memory swapped to fast disk device such as SSD. + stability: development unit: KiBy sum: monotonic: false value_type: int aggregation_temporality: cumulative attributes: [] - vcenter.vm.disk.usage: + vcenter.vm.memory.usage: enabled: true - description: The amount of storage space used by the virtual machine. - unit: By + description: The amount of memory that is used by the virtual machine. + stability: development + unit: MiBy sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [disk_state] - vcenter.vm.disk.utilization: + attributes: [] + vcenter.vm.memory.utilization: enabled: true - description: The utilization of storage on the virtual machine. + description: The memory utilization of the VM. + stability: development unit: "%" gauge: value_type: double attributes: [] - vcenter.vm.disk.latency.avg: - enabled: true - description: The latency of operations to the virtual machine's disk. - unit: ms - gauge: - value_type: int - attributes: [disk_direction, disk_type, object_name] - extended_documentation: Requires Performance Counter level 2 for metric to populate. As measured over the most recent 20s interval. - vcenter.vm.disk.latency.max: - enabled: true - description: The highest reported total latency (device and kernel times) over an interval of 20 seconds. - unit: ms - gauge: - value_type: int - attributes: [object_name] - vcenter.vm.disk.throughput: - enabled: true - description: Average number of kilobytes read from or written to the virtual disk each second. - unit: "{KiBy/s}" - gauge: - value_type: int - attributes: [disk_direction, object_name] - extended_documentation: As measured over the most recent 20s interval. Requires Performance Level 2. - vcenter.vm.network.throughput: - enabled: true - description: The amount of data that was transmitted or received over the network of the virtual machine. - unit: "By/s" - sum: - monotonic: false - value_type: int - aggregation_temporality: cumulative - attributes: [throughput_direction, object_name] - extended_documentation: As measured over the most recent 20s interval. vcenter.vm.network.broadcast.packet.rate: enabled: false description: The rate of broadcast packets transmitted or received by each vNIC (virtual network interface controller) on the virtual machine. + stability: development unit: "{packets/s}" gauge: value_type: double @@ -688,86 +773,73 @@ metrics: vcenter.vm.network.multicast.packet.rate: enabled: false description: The rate of multicast packets transmitted or received by each vNIC (virtual network interface controller) on the virtual machine. + stability: development unit: "{packets/s}" gauge: value_type: double attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.vm.network.packet.rate: + vcenter.vm.network.packet.drop.rate: enabled: true - description: The rate of packets transmitted or received by each vNIC (virtual network interface controller) on the virtual machine. + description: The rate of transmitted or received packets dropped by each vNIC (virtual network interface controller) on the virtual machine. + stability: development unit: "{packets/s}" gauge: value_type: double attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.vm.network.packet.drop.rate: + vcenter.vm.network.packet.rate: enabled: true - description: The rate of transmitted or received packets dropped by each vNIC (virtual network interface controller) on the virtual machine. + description: The rate of packets transmitted or received by each vNIC (virtual network interface controller) on the virtual machine. + stability: development unit: "{packets/s}" gauge: value_type: double attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.vm.network.usage: + vcenter.vm.network.throughput: enabled: true - description: The network utilization combined transmit and receive rates during an interval. - unit: "{KiBy/s}" + description: The amount of data that was transmitted or received over the network of the virtual machine. + stability: development + unit: "By/s" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [object_name] + attributes: [throughput_direction, object_name] extended_documentation: As measured over the most recent 20s interval. - vcenter.vm.cpu.utilization: - enabled: true - description: The CPU utilization of the VM. - unit: "%" - gauge: - value_type: double - attributes: [] - vcenter.vm.cpu.usage: + vcenter.vm.network.usage: enabled: true - description: The amount of CPU used by the VM. - unit: "MHz" + description: The network utilization combined transmit and receive rates during an interval. + stability: development + unit: "{KiBy/s}" sum: monotonic: false value_type: int aggregation_temporality: cumulative - attributes: [] - vcenter.vm.cpu.readiness: + attributes: [object_name] + extended_documentation: As measured over the most recent 20s interval. + vcenter.vm.vsan.latency.avg: enabled: true - description: Percentage of time that the virtual machine was ready, but could not get scheduled to run on the physical CPU. - unit: "%" + description: The virtual machine latency while accessing vSAN storage. + stability: development + unit: "us" gauge: value_type: int - attributes: [] - vcenter.vm.memory.utilization: - enabled: true - description: The memory utilization of the VM. - unit: "%" - gauge: - value_type: double - attributes: [] - vcenter.vm.vsan.throughput: - enabled: true - description: The vSAN throughput of a virtual machine. - unit: "By/s" - gauge: - value_type: double - attributes: [vsan_throughput_direction] + attributes: [vsan_latency_type] vcenter.vm.vsan.operations: enabled: true description: The vSAN IOPs of a virtual machine. + stability: development unit: "{operations/s}" gauge: value_type: int attributes: [vsan_operation_type] - vcenter.vm.vsan.latency.avg: + vcenter.vm.vsan.throughput: enabled: true - description: The virtual machine latency while accessing vSAN storage. - unit: "us" + description: The vSAN throughput of a virtual machine. + stability: development + unit: "By/s" gauge: - value_type: int - attributes: [vsan_latency_type] - \ No newline at end of file + value_type: double + attributes: [vsan_throughput_direction] diff --git a/metric-metadata/vcrreceiver.yaml b/metric-metadata/vcrreceiver.yaml new file mode 100644 index 0000000..21a83df --- /dev/null +++ b/metric-metadata/vcrreceiver.yaml @@ -0,0 +1,8 @@ +type: vcr + +status: + class: receiver + stability: + development: [traces, metrics, logs, profiles] + codeowners: + active: [atoulme,robertgustafsonsplunk,garrett-splunk] diff --git a/metric-metadata/vultr.yaml b/metric-metadata/vultr.yaml new file mode 100644 index 0000000..9207e2a --- /dev/null +++ b/metric-metadata/vultr.yaml @@ -0,0 +1,34 @@ +type: vultrdetector + +status: + class: processor + stability: + alpha: [traces, metrics, logs, profiles] + codeowners: + active: [Aneurysm9, dashpole, paulojmdias] + +resource_attributes: + cloud.platform: + description: The cloud.platform + enabled: false + type: string + cloud.provider: + description: The cloud.provider + enabled: true + type: string + cloud.region: + description: The cloud region + type: string + enabled: true + host.id: + description: The host.id + type: string + enabled: true + host.name: + description: The hostname + type: string + enabled: true + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/wavefrontreceiver.yaml b/metric-metadata/wavefrontreceiver.yaml index e9fcc61..e771edb 100644 --- a/metric-metadata/wavefrontreceiver.yaml +++ b/metric-metadata/wavefrontreceiver.yaml @@ -3,7 +3,11 @@ type: wavefront status: class: receiver stability: - beta: [metrics] + deprecated: [metrics] distributions: [contrib] codeowners: active: [samiura] + deprecation: + metrics: + migration: "There is no replacement. This component will be removed in a future release." + date: "2026-02-13" diff --git a/metric-metadata/webhookeventreceiver.yaml b/metric-metadata/webhookeventreceiver.yaml index c4d5b6e..b0a2d43 100644 --- a/metric-metadata/webhookeventreceiver.yaml +++ b/metric-metadata/webhookeventreceiver.yaml @@ -3,7 +3,7 @@ type: webhookevent status: class: receiver stability: - alpha: [logs] + beta: [logs] distributions: [contrib] codeowners: active: ["atoulme", "shalper2"] diff --git a/metric-metadata/windowsservicereceiver.yaml b/metric-metadata/windowsservicereceiver.yaml index a193669..c2188e2 100644 --- a/metric-metadata/windowsservicereceiver.yaml +++ b/metric-metadata/windowsservicereceiver.yaml @@ -9,18 +9,23 @@ status: active: [pjanotti, shalper2] unsupported_platforms: [darwin, linux] +reaggregation_enabled: true + attributes: name: description: The name of the windows Service being reported. type: string + requirement_level: required startup_mode: description: Startup mode of Windows Service enum: [boot_start, system_start, auto_start, demand_start, disabled] type: string - + requirement_level: required + metrics: windows.service.status: enabled: true + stability: development description: Gauge value containing service status as an integer value. extended_documentation: > Gauge values map to service status as follows: diff --git a/metric-metadata/xstreamencoding.yaml b/metric-metadata/xstreamencoding.yaml new file mode 100644 index 0000000..aad7c67 --- /dev/null +++ b/metric-metadata/xstreamencoding.yaml @@ -0,0 +1,9 @@ +type: xstreamencoding + +status: + disable_codecov_badge: true + class: pkg + stability: + development: [ extension ] + codeowners: + active: [Kavindu-Dodan, axw] \ No newline at end of file diff --git a/metric-metadata/yanggrpcreceiver.yaml b/metric-metadata/yanggrpcreceiver.yaml new file mode 100644 index 0000000..5b74e4a --- /dev/null +++ b/metric-metadata/yanggrpcreceiver.yaml @@ -0,0 +1,86 @@ +type: yanggrpc + +status: + class: receiver + stability: + alpha: [metrics] + distributions: [] + codeowners: + active: [atoulme] + +# Internal telemetry metrics for component observability +telemetry: + metrics: + yang_receiver_bytes_received: + enabled: true + description: Total bytes received from telemetry connections + unit: "By" + sum: + value_type: int + monotonic: true + stability: development + yang_receiver_connections_closed: + enabled: true + description: Number of gRPC connections closed + unit: "{connections}" + sum: + value_type: int + stability: development + yang_receiver_connections_opened: + enabled: true + description: Number of gRPC connections opened + unit: "{connections}" + sum: + value_type: int + stability: development + yang_receiver_grpc_errors: + enabled: true + description: Number of gRPC errors encountered + unit: "{errors}" + sum: + value_type: int + monotonic: true + stability: development + yang_receiver_messages_dropped: + enabled: true + description: Number of telemetry messages dropped due to errors + unit: "{messages}" + sum: + value_type: int + monotonic: true + stability: development + yang_receiver_messages_processed: + enabled: true + description: Number of telemetry messages successfully processed + unit: "{messages}" + sum: + value_type: int + monotonic: true + stability: development + yang_receiver_messages_received: + enabled: true + description: Number of telemetry messages received + unit: "{messages}" + sum: + value_type: int + monotonic: true + stability: development + yang_receiver_processing_duration: + enabled: true + description: Time spent processing telemetry messages + unit: "ms" + histogram: + bucket_boundaries: [ 0.1, 0.5, 1.0, 5.0, 10.0, 50.0, 100.0, 500.0, 1000.0 ] + value_type: double + stability: development + yang_receiver_yang_modules_discovered: + enabled: true + description: Number of unique YANG modules discovered + unit: "{errors}" + sum: + value_type: int + stability: development + +tests: + skip_lifecycle: true + skip_shutdown: true diff --git a/metric-metadata/zipkin.yaml b/metric-metadata/zipkin.yaml index b115b5d..9396d3a 100644 --- a/metric-metadata/zipkin.yaml +++ b/metric-metadata/zipkin.yaml @@ -2,3 +2,4 @@ status: disable_codecov_badge: true codeowners: active: [MovieStoreGuy, andrzej-stencel, crobert-1] + class: pkg diff --git a/metric-metadata/zipkinencodingextension.yaml b/metric-metadata/zipkinencodingextension.yaml index 80c40be..b426b0c 100644 --- a/metric-metadata/zipkinencodingextension.yaml +++ b/metric-metadata/zipkinencodingextension.yaml @@ -1,11 +1,14 @@ +display_name: Zipkin Encoding Extension type: zipkin_encoding +description: This extension supports marshaling and unmarshalling Zipkin data representing traces. + status: disable_codecov_badge: true class: extension stability: alpha: [extension] - distributions: [] + distributions: [contrib] codeowners: active: [MovieStoreGuy, dao-jun] diff --git a/metric-metadata/zipkinexporter.yaml b/metric-metadata/zipkinexporter.yaml index 2d12aa8..59e38ae 100644 --- a/metric-metadata/zipkinexporter.yaml +++ b/metric-metadata/zipkinexporter.yaml @@ -1,4 +1,5 @@ type: zipkin +display_name: Zipkin Exporter status: class: exporter diff --git a/metric-metadata/zookeeperscraper.yaml b/metric-metadata/zookeeperscraper.yaml index ad3c43c..8f99618 100644 --- a/metric-metadata/zookeeperscraper.yaml +++ b/metric-metadata/zookeeperscraper.yaml @@ -21,75 +21,135 @@ resource_attributes: type: string attributes: - state: - description: State of followers - type: string - enum: - - synced - - unsynced direction: description: State of a packet based on io direction. type: string enum: - received - sent + state: + description: State of followers + type: string + enum: + - synced + - unsynced metrics: + zookeeper.connection.active: + enabled: true + description: Number of active clients connected to a ZooKeeper server. + stability: development + unit: "{connections}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + zookeeper.data_tree.ephemeral_node.count: + enabled: true + description: Number of ephemeral nodes that a ZooKeeper server has in its data tree. + stability: development + unit: "{nodes}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + zookeeper.data_tree.size: + enabled: true + description: Size of data in bytes that a ZooKeeper server has in its data tree. + stability: development + unit: By + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int + zookeeper.file_descriptor.limit: + enabled: true + description: Maximum number of file descriptors that a ZooKeeper server can open. + stability: development + unit: "{file_descriptors}" + gauge: + value_type: int + zookeeper.file_descriptor.open: + enabled: true + description: Number of file descriptors that a ZooKeeper server has open. + stability: development + unit: "{file_descriptors}" + sum: + monotonic: false + aggregation_temporality: cumulative + value_type: int zookeeper.follower.count: enabled: true description: The number of followers. Only exposed by the leader. + stability: development unit: "{followers}" attributes: [state] sum: monotonic: false aggregation_temporality: cumulative value_type: int - zookeeper.sync.pending: + zookeeper.fsync.exceeded_threshold.count: enabled: true - description: The number of pending syncs from the followers. Only exposed by the leader. - unit: "{syncs}" + description: Number of times fsync duration has exceeded warning threshold. + stability: development + unit: "{events}" sum: - monotonic: false - aggregation_temporality: cumulative value_type: int + monotonic: true + aggregation_temporality: cumulative zookeeper.latency.avg: enabled: true description: Average time in milliseconds for requests to be processed. + stability: development unit: ms gauge: value_type: int zookeeper.latency.max: enabled: true description: Maximum time in milliseconds for requests to be processed. + stability: development unit: ms gauge: value_type: int zookeeper.latency.min: enabled: true description: Minimum time in milliseconds for requests to be processed. + stability: development unit: ms gauge: value_type: int - zookeeper.connection.active: + zookeeper.packet.count: enabled: true - description: Number of active clients connected to a ZooKeeper server. - unit: "{connections}" + description: The number of ZooKeeper packets received or sent by a server. + stability: development + unit: "{packets}" + attributes: [direction] sum: - monotonic: false - aggregation_temporality: cumulative value_type: int + monotonic: true + aggregation_temporality: cumulative zookeeper.request.active: enabled: true description: Number of currently executing requests. + stability: development unit: "{requests}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - zookeeper.znode.count: + zookeeper.ruok: enabled: true - description: Number of z-nodes that a ZooKeeper server has in its data tree. - unit: "{znodes}" + description: Response from zookeeper ruok command + stability: development + unit: "1" + gauge: + value_type: int + + zookeeper.sync.pending: + enabled: true + description: The number of pending syncs from the followers. Only exposed by the leader. + stability: development + unit: "{syncs}" sum: monotonic: false aggregation_temporality: cumulative @@ -97,64 +157,20 @@ metrics: zookeeper.watch.count: enabled: true description: Number of watches placed on Z-Nodes on a ZooKeeper server. + stability: development unit: "{watches}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - zookeeper.data_tree.ephemeral_node.count: - enabled: true - description: Number of ephemeral nodes that a ZooKeeper server has in its data tree. - unit: "{nodes}" - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - zookeeper.data_tree.size: - enabled: true - description: Size of data in bytes that a ZooKeeper server has in its data tree. - unit: By - sum: - monotonic: false - aggregation_temporality: cumulative - value_type: int - zookeeper.file_descriptor.open: + zookeeper.znode.count: enabled: true - description: Number of file descriptors that a ZooKeeper server has open. - unit: "{file_descriptors}" + description: Number of z-nodes that a ZooKeeper server has in its data tree. + stability: development + unit: "{znodes}" sum: monotonic: false aggregation_temporality: cumulative value_type: int - zookeeper.file_descriptor.limit: - enabled: true - description: Maximum number of file descriptors that a ZooKeeper server can open. - unit: "{file_descriptors}" - gauge: - value_type: int - zookeeper.packet.count: - enabled: true - description: The number of ZooKeeper packets received or sent by a server. - unit: "{packets}" - attributes: [direction] - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - zookeeper.fsync.exceeded_threshold.count: - enabled: true - description: Number of times fsync duration has exceeded warning threshold. - unit: "{events}" - sum: - value_type: int - monotonic: true - aggregation_temporality: cumulative - zookeeper.ruok: - enabled: true - description: Response from zookeeper ruok command - unit: "1" - gauge: - value_type: int - tests: config: