Skip to content

SRE Exporter service enables exporting Edge Orchestrator's Service Level Indicators (SLIs) and its key runtime metrics to external systems.

Notifications You must be signed in to change notification settings

open-edge-platform/o11y-sre-exporter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Edge Orchestrator SRE Exporter

License OpenSSF Scorecard

Overview

The SRE Exporter is a service running in Edge Orchestrator that perpetually collects a subset of metrics from both Edge Orchestrator services and Edge Nodes, and exports them to an arbitrary external destination server using the Prometheus Remote-Write Protocol.

The SRE Exporter is intended to enhance the reliability of Edge Orchestrator by allowing it to store and monitor its essential metrics within an independent Site Reliability Engineering (SRE) system. Such an SRE system may implement its own data retention policy and provide SRE functions like performance monitoring, incident management, on-call management, etc.

The SRE Exporter allows for the configuration of the following settings:

  • Destination server URL and basic authentication credentials
  • TLS (optionally the server's private CA root certificate can be provided)
  • Export time interval
  • Edge Orchestrator instance-specific label

The SRE Exporter allows for monitoring the following metrics:

  • Edge Orchestrator API success rate and latency
  • Edge Orchestrator cluster nodes saturation metrics (CPU and memory)
  • Edge Orchestrator Vault status
  • Edge Nodes metrics (CPU, memory, disk, temperature) across all organizations and projects

See the Exported metrics specification for more details.

Read more about the SRE Exporter in the Documentation.

Get Started

To set up the development environment and work on this project, follow the steps below. All necessary tools will be installed using the install-tools target. Note that docker and asdf must be installed beforehand.

Install Tools

To install all the necessary tools needed for development the project, run:

make install-tools

Build

To build the project, use the following command:

make build

Lint

To lint the code and ensure it adheres to the coding standards, run:

make lint

Test

To run the tests and verify the functionality of the project, use:

make test

Docker Build

To build the Docker images for the project, run:

make docker-build

Helm Build

To package the Helm chart for the project, use:

make helm-build

Docker Push

To push the Docker images to the registry, run:

make docker-push

Helm Push

To push the Helm chart to the repository, use:

make helm-push

Kind All

To load the Docker images into a local Kind cluster, run:

make kind-all

Proto

To generate code from protobuf definitions, use:

make proto

Develop

It is recommended to develop the sre-exporter application by deploying and testing it as a part of the Edge Orchestrator cluster. Refer to Development and Testing document for more detailed instructions.

The code of this project is maintained and released in CI using the VERSION file. In addition, the chart is versioned with the same tag as the VERSION file.

This is mandatory to keep all chart versions and app versions coherent.

To bump the version, increment the version in the VERSION file and run the following command (to set version and appVersion in the Chart.yaml automatically):

make helm-build

Contribute

To learn how to contribute to the project, see the Contributor's Guide.

Community and Support

To learn more about the project, its community, and governance, visit the Edge Orchestrator Community.

For support, start with Troubleshooting or Contact us.

License

The Edge Orchestrator Site Reliability Engineering (SRE) Exporter is licensed under the Apache 2.0 License.

Last Updated Date: {March 28, 2025}