SlideShare a Scribd company logo
Improving monitoring systems Interoperability with OpenMetrics
Monitoring System Interoperability with
OpenMetrics
Chanshik Lim @ NexCloud
Agenda
▶Prometheus
• Prometheus Architecture
• Prometheus Metrics
• Prometheus Exposition Format
▶OpenMetrics
• Standardization
• Improvements
▶Interoperability with OpenMetrics
• Demo Architecture
• Integrations
▶References
Who am I
Chanshik Lim
• Lead software engineer @NexCloud
• Maintainer of NexClipper project
https://github.com/NexClipper/NexClipper
• Go, Python
• Linux, Kubernetes, Prometheus
• Hiring software engineer for
#Kubernetes #Prometheus #Metrics #Monitoring
Prometheus
Prometheus
https://prometheus.io/
• Started in 2012, Version 1.0 released in 2016
• Contributed to CNCF in May 2016
• Graduated in August 2018
• A multi-dimensional data model with time series data
• Pulling model over HTTP
• PromQL: Flexible query language
• Alertmanager: handle alerts
Prometheus Architecture
Prometheus Metrics
Prometheus Exposition Format
▶Human-readable, Readable line by line
▶Metric Syntax
▶Supported metric primitives
• Counter
• Gauge
• Histogram
• Summary
• Untyped
Metric Name
[a-zA-Z_:][a-zA-Z0-9_:]*.
▶Prefix: application, namespace or domain
• prometheus_notifications_total
• process_cpu_seconds_total
• http_request_duration_seconds
▶Suffix: single unit
• node_memory_usage_bytes
• http_request_duration_seconds
• process_cpu_seconds_total
• http_requests_total
• prometheus_build_info (provide metadata)
Labels
▶Key-Value pairs associated with time series
▶Label name
• [a-zA-Z_][a-zA-Z0-9_]*.
▶http_requests_total
• http_requests_total{path="/login"}
• http_requests_total{path="/logout"}
• http_requests_total{path="/adduser"}
• http_requests_total{path="/comment"}
• http_requests_total{path="/view"}
▶Do not use labels to store dimensions with high cardinality
• IDs, email addresses, …
Samples
▶Actual time series data
▶Float64 value
▶Millisecond-precision timestamp (optional)
▶Values
• node_cpu_seconds_total{cpu="0",mode="idle"} 48649.88
• node_cpu_seconds_total{cpu="0",mode="iowait"} 169.99
• node_cpu_seconds_total{cpu="0",mode="irq"} 0
• node_cpu_seconds_total{cpu="0",mode="nice"} 57.5
OpenMetrics
Before Prometheus
▶SNMP (closest to metric standard)
▶Highly fragmented monitoring landscape
▶Proprietary formats (with missing documents)
▶Difficult to implement
▶Various monitoring system specific formats
After Prometheus
▶Prometheus exposition format became a de-facto standard
▶Re-use Prometheus exporters to integration
▶Hundreds of exporters
▶Main monitoring players support Prometheus exposition format
Standardization
https://openmetrics.io/
▶Prometheus exposition format is still the Prometheus format
▶Traditional vendors wants to avoid lock-in
▶Prefer to use official standards
▶Vendor neutral
▶CNCF sandbox project
▶Official standard (in progress)
• IETF RFC
• Registered content-type/MIME-type : application/openmetrics-text
• (maybe) IANA port assignment
Improvements
# UNIT : new directive to represent the unit of a metric
# EOF : to detect interrupted metrics
▶Timestamps are in seconds
▶Counter requires _total on the time series
▶Considerations for pull and push
▶Optional support for protobufs
▶Info / Enum : First class features
Prometheus & OpenMetrics
Prometheus
OpenMetrics
# TYPE foo_seconds_total counter
foo_seconds_total 1.0
# TYPE foo_seconds counter
# UNIT foo_seconds seconds
foo_seconds_total 1.0
foo_seconds_created 1572688096.0
# EOF
Exemplars
Attach an ID off a trace to directly link to certain metrics
# TYPE foo histogram
foo_bucket{le=“0.01”} 0
foo_bucket{le=“0.1”} 8 # {id=“abc”} 0.043
foo_bucket{le=“1”} 10 # {id=“def”} 0.29
foo_bucket{le=“10”} 17 # {id=“ghi”} 7.73
foo_bucket{le=“+Inf”} 18
foo_count 18
foo_sum 324789.3
foo_created 1520430000.123
Interoperability with
OpenMetrics
Demo Architecture
IoT Application
Internal
Network
Cloud Platform Datadog Metric Explorer
NexAgent
IoT Application
NexAgent
Scrape Device Metrics
IoT Application NexAgent
Filtering: iot_* metrics
…
process_open_fds 6.0
# HELP process_max_fds Maximum number of open file descriptors.
# TYPE process_max_fds gauge
process_max_fds 1024.0
# HELP iot_temperature_celsius Temperature of device
# TYPE iot_temperature_celsius gauge
iot_temperature_celsius{host="device-1"} 43.87955931016437
# HELP iot_voltage_volts Voltage of device
# TYPE iot_voltage_volts gauge
iot_voltage_volts{host="device-1"} 0.32506781422008024
# HELP iot_current_amperes Electric current of device
# TYPE iot_current_amperes gauge
iot_current_amperes{host="device-1"} 0.5505769171108466
# HELP iot_memory_free_bytes Free memory of device
# TYPE iot_memory_free_bytes gauge
iot_memory_free_bytes{host="device-1"} 1.499344896e+09
…
# HELP iot_temperature_celsius Temperature of device
# TYPE iot_temperature_celsius gauge
iot_temperature_celsius{host="device-1"} 43.87955931016437
# HELP iot_voltage_volts Voltage of device
# TYPE iot_voltage_volts gauge
iot_voltage_volts{host="device-1"} 0.32506781422008024
# HELP iot_current_amperes Electric current of device
# TYPE iot_current_amperes gauge
iot_current_amperes{host="device-1"} 0.5505769171108466
# HELP iot_memory_free_bytes Free memory of device
# TYPE iot_memory_free_bytes gauge
iot_memory_free_bytes{host="device-1"} 1.499344896e+09
Metrics Integration with OpenMetrics
NexAgent
#1
NexAgent
#2
# HELP iot_temperature_celsius IoT metric iot_temperature_celsius
# TYPE iot_temperature_celsius gauge
iot_temperature_celsius{host="device-1"} 12.571817488302889
# HELP iot_voltage_volts IoT metric iot_voltage_volts
# TYPE iot_voltage_volts gauge
iot_voltage_volts{host="device-1"} 7.845377222730105
# HELP iot_current_amperes IoT metric iot_current_amperes
# TYPE iot_current_amperes gauge
iot_current_amperes{host="device-1"} 7.629632512400462
…
# HELP iot_temperature_celsius IoT metric iot_temperature_celsius
# TYPE iot_temperature_celsius gauge
iot_temperature_celsius{host="device-2"} 17.218040315106897
# HELP iot_voltage_volts IoT metric iot_voltage_volts
# TYPE iot_voltage_volts gauge
iot_voltage_volts{host="device-2"} 8.962618429932972
# HELP iot_current_amperes IoT metric iot_current_amperes
# TYPE iot_current_amperes gauge
iot_current_amperes{host="device-2"} 8.602160171006599
…
Filtering: iot_* metrics
Integrations: Prometheus
…
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'openmetrics'
static_configs:
- targets: ['172.26.2.74:5050']
Integrations: DataDog (1)
Integrations: DataDog (2)
init_config:
instances:
- prometheus_url: http://127.0.0.1:5050/metrics
namespace: "openmetrics"
metrics:
- iot_*
Integrations: NexClipper Project
Metric Pipeline
Global View
Exporter ManagerNexServer
Multi-Custer
Multi-Cloud
……
Long term data
Exporters
NexAgent NexAgentNexAgentNexAgent
Applications
Exporters
Applications
Node
cAdvisor
….
Exporters
Applications
Cluster
Node
Workload
Service
Prometheus servers/ Clusters Legacy datacenter/ HostKubernetes Clusters IoT Clusters
‘Metrics Pipeline’ for interoperability and Enterprise Prometheus
(https://github.com/NexClipper/NexClipper)
Questions ?
To Learn Prometheus
References
OpenMetrics: What Does It Mean for You
by Brian Brazil, PromCon 2019
https://promcon.io/2019-munich/talks/openmetrics-what-does-it-mean-for-you/
OpenMetrics: Is Prometheus unbound?
https://medium.com/@leodido/openmetrics-20d40eb0b302
OpenMetrics - Transforming the Prometheus Exposition Format into a Global Standard
by Richard Hartmann, PromCon 2018
https://promcon.io/2018-munich/talks/openmetrics-transforming-the-prometheus-exposition-format-into-a-global-
standard/
The Prometheus Time Series Database
by Björn Rabenstein, PromCon 2016
https://promcon.io/2016-berlin/talks/the-prometheus-time-series-database/

More Related Content

PDF
What is new in Go 1.8
PDF
Vm ware fuzzing - defcon russia 20
PDF
Rihards Olups - Encrypting Daemon Traffic With Zabbix 3.0
PDF
PyCon AU 2015 - Using benchmarks to understand how wsgi servers work
PDF
OSNoise Tracer: Who Is Stealing My CPU Time?
PDF
Puppet and Openshift
PDF
Varnish Cache 4.0 / Redpill Linpro breakfast in Oslo
PDF
Monitoring with Syslog and EventMachine
What is new in Go 1.8
Vm ware fuzzing - defcon russia 20
Rihards Olups - Encrypting Daemon Traffic With Zabbix 3.0
PyCon AU 2015 - Using benchmarks to understand how wsgi servers work
OSNoise Tracer: Who Is Stealing My CPU Time?
Puppet and Openshift
Varnish Cache 4.0 / Redpill Linpro breakfast in Oslo
Monitoring with Syslog and EventMachine

What's hot (20)

PDF
Tuning the Kernel for Varnish Cache
PDF
Using eBPF to Measure the k8s Cluster Health
PDF
Profiling and optimizing go programs
PDF
A little systemtap
PDF
TomcatCon: from a cluster to the cloud
PPTX
Plone deployment made easy
PDF
Puppet User Group Presentation - 15 March 2012
PDF
Nessus scan report using microsoft patchs scan policy - Tareq Hanaysha
PPTX
Quick Start Guide using Virtuozzo 7 (β) on AWS EC2
PDF
Performance optimization 101 - Erlang Factory SF 2014
PDF
Continuous Go Profiling & Observability
ODP
Nmap Scripting Engine and http-enumeration
PDF
Event loop
KEY
Don’t block the event loop!
PDF
Whoops! I Rewrote It in Rust
PPTX
openATTIC using grafana and prometheus
PPTX
Kubernetes Probes (Liveness, Readyness, Startup) Introduction
PDF
#Include os - From bootloader to REST API with the new C++
PDF
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
PDF
Make Your Own Developement Board @ 2014.4.21 JuluOSDev
Tuning the Kernel for Varnish Cache
Using eBPF to Measure the k8s Cluster Health
Profiling and optimizing go programs
A little systemtap
TomcatCon: from a cluster to the cloud
Plone deployment made easy
Puppet User Group Presentation - 15 March 2012
Nessus scan report using microsoft patchs scan policy - Tareq Hanaysha
Quick Start Guide using Virtuozzo 7 (β) on AWS EC2
Performance optimization 101 - Erlang Factory SF 2014
Continuous Go Profiling & Observability
Nmap Scripting Engine and http-enumeration
Event loop
Don’t block the event loop!
Whoops! I Rewrote It in Rust
openATTIC using grafana and prometheus
Kubernetes Probes (Liveness, Readyness, Startup) Introduction
#Include os - From bootloader to REST API with the new C++
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Make Your Own Developement Board @ 2014.4.21 JuluOSDev
Ad

Similar to Improving monitoring systems Interoperability with OpenMetrics (20)

PDF
DevOps Spain 2019. Beatriz Martínez-IBM
PPTX
Prometheus and Grafana
PPTX
The New York Times: Sustainable Systems, Powered by Python
PDF
Monitoring in Big Data Platform - Albert Lewandowski, GetInData
PPTX
Python for IoT CoE.pptx KDOJWIHJNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PPTX
MeetUp Monitoring with Prometheus and Grafana (September 2018)
PDF
Implementing Observability for Kubernetes.pdf
PDF
Neo4j Data Loading with Kettle
PDF
Manage Microservices Chaos and Complexity with Observability
PDF
Click, Click, Test - Automated Tests for APEX Applications
PDF
Keymetrics pm2
PDF
KCD-OpenTelemetry.pdf
PDF
Introduction to TensorFlow Lite
PDF
iOS viper presentation
PDF
PARKING ALLOTMENT SYSTEM PROJECT REPORT REPORT.
PDF
Automated Developer Testing: Achievements and Challenges
ODP
Monitoring With Prometheus
PPTX
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
PDF
Securing the Internet of Things - Hank Chavers
PDF
Leveraging Python Telemetry, Azure Application Logging, and Performance Testi...
DevOps Spain 2019. Beatriz Martínez-IBM
Prometheus and Grafana
The New York Times: Sustainable Systems, Powered by Python
Monitoring in Big Data Platform - Albert Lewandowski, GetInData
Python for IoT CoE.pptx KDOJWIHJNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MeetUp Monitoring with Prometheus and Grafana (September 2018)
Implementing Observability for Kubernetes.pdf
Neo4j Data Loading with Kettle
Manage Microservices Chaos and Complexity with Observability
Click, Click, Test - Automated Tests for APEX Applications
Keymetrics pm2
KCD-OpenTelemetry.pdf
Introduction to TensorFlow Lite
iOS viper presentation
PARKING ALLOTMENT SYSTEM PROJECT REPORT REPORT.
Automated Developer Testing: Achievements and Challenges
Monitoring With Prometheus
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
Securing the Internet of Things - Hank Chavers
Leveraging Python Telemetry, Azure Application Logging, and Performance Testi...
Ad

More from Chan Shik Lim (10)

PPTX
FPV Streaming Server with ffmpeg
PPTX
pgday.seoul 2019: TimescaleDB
PDF
Kubernetes on Premise Practical Guide
PDF
Kubernetes on Premise
PPTX
Hadoop High Availability Summary
PDF
Python Programming: Tuning and Optimization
PDF
Python Programming: Data Structure
PDF
Python Programming: Class and Object Oriented Programming
PDF
Python Programming: Function
PDF
Python Programming: Type and Object
FPV Streaming Server with ffmpeg
pgday.seoul 2019: TimescaleDB
Kubernetes on Premise Practical Guide
Kubernetes on Premise
Hadoop High Availability Summary
Python Programming: Tuning and Optimization
Python Programming: Data Structure
Python Programming: Class and Object Oriented Programming
Python Programming: Function
Python Programming: Type and Object

Recently uploaded (20)

PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Machine Learning_overview_presentation.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
Teaching material agriculture food technology
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Empathic Computing: Creating Shared Understanding
PPTX
MYSQL Presentation for SQL database connectivity
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Building Integrated photovoltaic BIPV_UPV.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology
Mobile App Security Testing_ A Comprehensive Guide.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Unlocking AI with Model Context Protocol (MCP)
Spectral efficient network and resource selection model in 5G networks
Encapsulation_ Review paper, used for researhc scholars
Machine Learning_overview_presentation.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Big Data Technologies - Introduction.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Teaching material agriculture food technology
Reach Out and Touch Someone: Haptics and Empathic Computing
Empathic Computing: Creating Shared Understanding
MYSQL Presentation for SQL database connectivity
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Dropbox Q2 2025 Financial Results & Investor Presentation

Improving monitoring systems Interoperability with OpenMetrics

  • 2. Monitoring System Interoperability with OpenMetrics Chanshik Lim @ NexCloud
  • 3. Agenda ▶Prometheus • Prometheus Architecture • Prometheus Metrics • Prometheus Exposition Format ▶OpenMetrics • Standardization • Improvements ▶Interoperability with OpenMetrics • Demo Architecture • Integrations ▶References
  • 4. Who am I Chanshik Lim • Lead software engineer @NexCloud • Maintainer of NexClipper project https://github.com/NexClipper/NexClipper • Go, Python • Linux, Kubernetes, Prometheus • Hiring software engineer for #Kubernetes #Prometheus #Metrics #Monitoring
  • 6. Prometheus https://prometheus.io/ • Started in 2012, Version 1.0 released in 2016 • Contributed to CNCF in May 2016 • Graduated in August 2018 • A multi-dimensional data model with time series data • Pulling model over HTTP • PromQL: Flexible query language • Alertmanager: handle alerts
  • 9. Prometheus Exposition Format ▶Human-readable, Readable line by line ▶Metric Syntax ▶Supported metric primitives • Counter • Gauge • Histogram • Summary • Untyped
  • 10. Metric Name [a-zA-Z_:][a-zA-Z0-9_:]*. ▶Prefix: application, namespace or domain • prometheus_notifications_total • process_cpu_seconds_total • http_request_duration_seconds ▶Suffix: single unit • node_memory_usage_bytes • http_request_duration_seconds • process_cpu_seconds_total • http_requests_total • prometheus_build_info (provide metadata)
  • 11. Labels ▶Key-Value pairs associated with time series ▶Label name • [a-zA-Z_][a-zA-Z0-9_]*. ▶http_requests_total • http_requests_total{path="/login"} • http_requests_total{path="/logout"} • http_requests_total{path="/adduser"} • http_requests_total{path="/comment"} • http_requests_total{path="/view"} ▶Do not use labels to store dimensions with high cardinality • IDs, email addresses, …
  • 12. Samples ▶Actual time series data ▶Float64 value ▶Millisecond-precision timestamp (optional) ▶Values • node_cpu_seconds_total{cpu="0",mode="idle"} 48649.88 • node_cpu_seconds_total{cpu="0",mode="iowait"} 169.99 • node_cpu_seconds_total{cpu="0",mode="irq"} 0 • node_cpu_seconds_total{cpu="0",mode="nice"} 57.5
  • 14. Before Prometheus ▶SNMP (closest to metric standard) ▶Highly fragmented monitoring landscape ▶Proprietary formats (with missing documents) ▶Difficult to implement ▶Various monitoring system specific formats
  • 15. After Prometheus ▶Prometheus exposition format became a de-facto standard ▶Re-use Prometheus exporters to integration ▶Hundreds of exporters ▶Main monitoring players support Prometheus exposition format
  • 16. Standardization https://openmetrics.io/ ▶Prometheus exposition format is still the Prometheus format ▶Traditional vendors wants to avoid lock-in ▶Prefer to use official standards ▶Vendor neutral ▶CNCF sandbox project ▶Official standard (in progress) • IETF RFC • Registered content-type/MIME-type : application/openmetrics-text • (maybe) IANA port assignment
  • 17. Improvements # UNIT : new directive to represent the unit of a metric # EOF : to detect interrupted metrics ▶Timestamps are in seconds ▶Counter requires _total on the time series ▶Considerations for pull and push ▶Optional support for protobufs ▶Info / Enum : First class features
  • 18. Prometheus & OpenMetrics Prometheus OpenMetrics # TYPE foo_seconds_total counter foo_seconds_total 1.0 # TYPE foo_seconds counter # UNIT foo_seconds seconds foo_seconds_total 1.0 foo_seconds_created 1572688096.0 # EOF
  • 19. Exemplars Attach an ID off a trace to directly link to certain metrics # TYPE foo histogram foo_bucket{le=“0.01”} 0 foo_bucket{le=“0.1”} 8 # {id=“abc”} 0.043 foo_bucket{le=“1”} 10 # {id=“def”} 0.29 foo_bucket{le=“10”} 17 # {id=“ghi”} 7.73 foo_bucket{le=“+Inf”} 18 foo_count 18 foo_sum 324789.3 foo_created 1520430000.123
  • 21. Demo Architecture IoT Application Internal Network Cloud Platform Datadog Metric Explorer NexAgent IoT Application NexAgent
  • 22. Scrape Device Metrics IoT Application NexAgent Filtering: iot_* metrics … process_open_fds 6.0 # HELP process_max_fds Maximum number of open file descriptors. # TYPE process_max_fds gauge process_max_fds 1024.0 # HELP iot_temperature_celsius Temperature of device # TYPE iot_temperature_celsius gauge iot_temperature_celsius{host="device-1"} 43.87955931016437 # HELP iot_voltage_volts Voltage of device # TYPE iot_voltage_volts gauge iot_voltage_volts{host="device-1"} 0.32506781422008024 # HELP iot_current_amperes Electric current of device # TYPE iot_current_amperes gauge iot_current_amperes{host="device-1"} 0.5505769171108466 # HELP iot_memory_free_bytes Free memory of device # TYPE iot_memory_free_bytes gauge iot_memory_free_bytes{host="device-1"} 1.499344896e+09 … # HELP iot_temperature_celsius Temperature of device # TYPE iot_temperature_celsius gauge iot_temperature_celsius{host="device-1"} 43.87955931016437 # HELP iot_voltage_volts Voltage of device # TYPE iot_voltage_volts gauge iot_voltage_volts{host="device-1"} 0.32506781422008024 # HELP iot_current_amperes Electric current of device # TYPE iot_current_amperes gauge iot_current_amperes{host="device-1"} 0.5505769171108466 # HELP iot_memory_free_bytes Free memory of device # TYPE iot_memory_free_bytes gauge iot_memory_free_bytes{host="device-1"} 1.499344896e+09
  • 23. Metrics Integration with OpenMetrics NexAgent #1 NexAgent #2 # HELP iot_temperature_celsius IoT metric iot_temperature_celsius # TYPE iot_temperature_celsius gauge iot_temperature_celsius{host="device-1"} 12.571817488302889 # HELP iot_voltage_volts IoT metric iot_voltage_volts # TYPE iot_voltage_volts gauge iot_voltage_volts{host="device-1"} 7.845377222730105 # HELP iot_current_amperes IoT metric iot_current_amperes # TYPE iot_current_amperes gauge iot_current_amperes{host="device-1"} 7.629632512400462 … # HELP iot_temperature_celsius IoT metric iot_temperature_celsius # TYPE iot_temperature_celsius gauge iot_temperature_celsius{host="device-2"} 17.218040315106897 # HELP iot_voltage_volts IoT metric iot_voltage_volts # TYPE iot_voltage_volts gauge iot_voltage_volts{host="device-2"} 8.962618429932972 # HELP iot_current_amperes IoT metric iot_current_amperes # TYPE iot_current_amperes gauge iot_current_amperes{host="device-2"} 8.602160171006599 … Filtering: iot_* metrics
  • 24. Integrations: Prometheus … scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] - job_name: 'openmetrics' static_configs: - targets: ['172.26.2.74:5050']
  • 26. Integrations: DataDog (2) init_config: instances: - prometheus_url: http://127.0.0.1:5050/metrics namespace: "openmetrics" metrics: - iot_*
  • 27. Integrations: NexClipper Project Metric Pipeline Global View Exporter ManagerNexServer Multi-Custer Multi-Cloud …… Long term data Exporters NexAgent NexAgentNexAgentNexAgent Applications Exporters Applications Node cAdvisor …. Exporters Applications Cluster Node Workload Service Prometheus servers/ Clusters Legacy datacenter/ HostKubernetes Clusters IoT Clusters ‘Metrics Pipeline’ for interoperability and Enterprise Prometheus (https://github.com/NexClipper/NexClipper)
  • 30. References OpenMetrics: What Does It Mean for You by Brian Brazil, PromCon 2019 https://promcon.io/2019-munich/talks/openmetrics-what-does-it-mean-for-you/ OpenMetrics: Is Prometheus unbound? https://medium.com/@leodido/openmetrics-20d40eb0b302 OpenMetrics - Transforming the Prometheus Exposition Format into a Global Standard by Richard Hartmann, PromCon 2018 https://promcon.io/2018-munich/talks/openmetrics-transforming-the-prometheus-exposition-format-into-a-global- standard/ The Prometheus Time Series Database by Björn Rabenstein, PromCon 2016 https://promcon.io/2016-berlin/talks/the-prometheus-time-series-database/