2025-01-17 14:54:33 +05:30
|
|
|
package instrumentationtest
|
|
|
|
|
|
|
|
|
|
import (
|
2025-01-24 14:53:02 +05:30
|
|
|
"io"
|
|
|
|
|
"log/slog"
|
|
|
|
|
|
2025-03-20 21:01:41 +05:30
|
|
|
"github.com/SigNoz/signoz/pkg/factory"
|
|
|
|
|
"github.com/SigNoz/signoz/pkg/instrumentation"
|
2025-01-24 14:53:02 +05:30
|
|
|
"github.com/prometheus/client_golang/prometheus"
|
2025-01-17 14:54:33 +05:30
|
|
|
sdkmetric "go.opentelemetry.io/otel/metric"
|
|
|
|
|
noopmetric "go.opentelemetry.io/otel/metric/noop"
|
|
|
|
|
sdktrace "go.opentelemetry.io/otel/trace"
|
|
|
|
|
nooptrace "go.opentelemetry.io/otel/trace/noop"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type noopInstrumentation struct {
|
2025-01-24 14:53:02 +05:30
|
|
|
logger *slog.Logger
|
2025-01-17 14:54:33 +05:30
|
|
|
meterProvider sdkmetric.MeterProvider
|
|
|
|
|
tracerProvider sdktrace.TracerProvider
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func New() instrumentation.Instrumentation {
|
|
|
|
|
return &noopInstrumentation{
|
2025-01-24 14:53:02 +05:30
|
|
|
logger: slog.New(slog.NewTextHandler(io.Discard, nil)),
|
2025-01-17 14:54:33 +05:30
|
|
|
meterProvider: noopmetric.NewMeterProvider(),
|
|
|
|
|
tracerProvider: nooptrace.NewTracerProvider(),
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-01-24 14:53:02 +05:30
|
|
|
func (i *noopInstrumentation) Logger() *slog.Logger {
|
2025-01-17 14:54:33 +05:30
|
|
|
return i.logger
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (i *noopInstrumentation) MeterProvider() sdkmetric.MeterProvider {
|
|
|
|
|
return i.meterProvider
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (i *noopInstrumentation) TracerProvider() sdktrace.TracerProvider {
|
|
|
|
|
return i.tracerProvider
|
|
|
|
|
}
|
|
|
|
|
|
2025-01-24 14:53:02 +05:30
|
|
|
func (i *noopInstrumentation) PrometheusRegisterer() prometheus.Registerer {
|
|
|
|
|
return prometheus.NewRegistry()
|
|
|
|
|
}
|
|
|
|
|
|
2025-01-17 14:54:33 +05:30
|
|
|
func (i *noopInstrumentation) ToProviderSettings() factory.ProviderSettings {
|
|
|
|
|
return factory.ProviderSettings{
|
2025-01-24 14:53:02 +05:30
|
|
|
Logger: i.Logger(),
|
|
|
|
|
MeterProvider: i.MeterProvider(),
|
|
|
|
|
TracerProvider: i.TracerProvider(),
|
|
|
|
|
PrometheusRegisterer: i.PrometheusRegisterer(),
|
2025-01-17 14:54:33 +05:30
|
|
|
}
|
|
|
|
|
}
|