Open jszwedko opened 2 years ago
I was thinking we could orient these around general network statistics, taking inspiration from the Prometheus node exporter network metrics. Something like:
network_received_bytes_total{component_id=...}
network_received_connections_total{component_id=...}
network_received_errors_total{component_id=...}
network_sent_bytes_total{component_id=...}
network_sent_connections_total{component_id=..., status=...}
network_sent_errors_total{component_id=..., status=...}
👍 I like that. I updated the issue to be generally about component network metrics.
Just noting, this is covered in the changes in https://github.com/vectordotdev/vector/pull/12912. We should be using the metrics noted there or update the spec first.
A note for the community
Use Cases
It would be useful, in addition to the existing
component_(received|sent)_bytes_total
metric to see the raw bytes in / out of a component.We should update the component spec to describe how / when these are emitted.
Attempted Solutions
No response
Proposal
Add the following metrics for all network-based components:
Counters:
component_network_received_bytes_total{component_id=...}
component_network_received_errors_total{component_id=...}
component_network_sent_bytes_total{component_id=...}
component_network_sent_errors_total{component_id=...}
Gauges:
component_network_connections{component_id=...,open=active|passive}
Components
Sources
apache_metrics
sourceaws_ecs_metrics
sourceaws_kinesis_firehose
sourceaws_s3
sourceaws_sqs
sourcednstap
sourcedocker_logs
sourceeventstoredb_metrics
sourcefluent
sourcegcp_pubsub
sourceheroku_logs
sourcehttp
sourcekafka
sourcekubernetes_logs
sourcelogstash
sourcemongodb_metrics
sourcenats
sourcenginx_metrics
sourcepostgresql_metrics
sourceprometheus_remote_write
sourceprometheus_scrape
sourceredis
sourcesocket
sourcesplunk_hec
sourcestatsd
sourcesyslog
sourcevector
sourceSome sources might only have input metrics or only output metrics.
Transforms
aws_ec2_metadata
transformSinks
aws_cloudwatch_logs
sinkaws_cloudwatch_metrics
sinkaws_kinesis_firehose
sinkaws_kinesis_streams
sinkaws_s3
sinkaws_sqs
sinkazure_blob
sinkazure_monitor_logs
sinkclickhouse
sinkdatadog_archives
sinkdatadog_events
sinkdatadog_logs
sinkdatadog_traces
sinkelasticsearch
sinkgcp_cloud_storage
sinkgcp_pubsub
sinkgcp_stackdriver_logs
sinkgcp_stackdriver_metrics
sinkhoneycomb
sinkhttp
sinkhumio_logs
sinkhumio_metrics
sinkinfluxdb_logs
sinkinfluxdb_metrics
sinkkafka
sinklogdna
sinkloki
sinknats
sinknew_relic
sinknew_relic_logs
sinkpapertrail
sinkprometheus_exporter
sinkprometheus_remote_write
sinkpulsar
sinkredis
sinksematext_logs
sinksematext_metrics
sinksocket
sinksplunk_hec_logs
sinksplunk_hec_metrics
sinkstatsd
sinkvector
sinkwebsocket
sinkSome sinks might only have input metrics or only output metrics.
References
Related: https://github.com/vectordotdev/vector/issues/9316
Version
vector 0.20.0 (x86_64-apple-darwin 2a706a3 2022-02-10)