Monitoring
Protokit offers built-in integrations with a variety of monitoring techniques and services.
The following are available out of the box.
- Logs via Promtail and Loki
- Metrics via OpenTelemetry and Prometheus
- Traces via OpenTelemetry, OTel Collector and Tempo
- Dashboard via Grafana
Configuration
Protokit offers both modules to collect the data and docker-compose configurations to run all collector services.
The module used for integration is the OpenTelemetryModule.
It is responsible for collecting metrics and traces and exporting them to the otel collector and prometheus.
Configure the module:
...
// modules config
Sequencer: {
OpenTelemetryServer
}
...
appchain.configure({
...
Sequencer: {
OpenTelemetryServer: {
metrics: {
enabled: true
prometheus: {
host: "prometheus",
port: 4320,
appendTimestamp: true
},
nodeScrapeInterval: 10, // interval in seconds
},
tracing: {
enabled: true
otlp: {
url: "http://otel-collector:4317"
}
},
},
}
});Docker-compose files can be found in packages/deployment/docker/deployment.
Usage
Visit localhost:3001 to access the grafana UI.
Default dashboard aren’t yet available, but on our roadmap.