Enabling metrics in Prometheus
Below are examples of the code for enabling metrics in Prometheus in different YDB SDKs.
Go
Java
Python
JavaScript
Rust
Native SDK
database/sql
package main
import (
"context"
"github.com/prometheus/client_golang/prometheus"
metrics "github.com/ydb-platform/ydb-go-sdk-prometheus/v2"
"github.com/ydb-platform/ydb-go-sdk/v3"
"github.com/ydb-platform/ydb-go-sdk/v3/trace"
)
func main() {
ctx := context.Background()
registry := prometheus.NewRegistry()
db, err := ydb.Open(ctx,
os.Getenv("YDB_CONNECTION_STRING"),
metrics.WithTraces(
registry,
metrics.WithDetails(trace.DetailsAll),
metrics.WithSeparator("_"),
),
)
if err != nil {
panic(err)
}
defer db.Close(ctx)
...
}
package main
import (
"context"
"database/sql"
"github.com/prometheus/client_golang/prometheus"
metrics "github.com/ydb-platform/ydb-go-sdk-prometheus/v2"
"github.com/ydb-platform/ydb-go-sdk/v3"
"github.com/ydb-platform/ydb-go-sdk/v3/trace"
)
func main() {
ctx := context.Background()
registry := prometheus.NewRegistry()
nativeDriver, err := ydb.Open(ctx,
os.Getenv("YDB_CONNECTION_STRING"),
metrics.WithTraces(
registry,
metrics.WithDetails(trace.DetailsAll),
metrics.WithSeparator("_"),
),
)
if err != nil {
panic(err)
}
defer nativeDriver.Close(ctx)
connector, err := ydb.Connector(nativeDriver)
if err != nil {
panic(err)
}
db := sql.OpenDB(connector)
defer db.Close()
...
}
This functionality is not currently supported.
This functionality is not currently supported.
This section is under development.
This functionality is not currently supported.
Track progress or vote for Rust SDK support: ydb-rs-sdk#267
Was the article helpful?
Previous