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.
Dashboard
Visit http://localhost:3001 to access the grafana UI.
Import the protokit sequencer dashboard using the ID 25097 or check out the
on the grafana dashboard page