Files
zeekay 087e487107 feat: rebrand signoz-otel-collector → Hanzo OTEL Collector
- Go module: github.com/SigNoz/signoz-otel-collector → github.com/hanzoai/otel-collector
- All signoz-prefixed packages → o11y-prefixed
- Docker: signoz/* → ghcr.io/hanzoai/otel-collector
- ClickHouse exporter → Hanzo Datastore
- Env vars: SIGNOZ_* → HANZO_*
- Directory renames for all processor/receiver/exporter packages
2026-03-12 00:21:24 -07:00

57 lines
1.4 KiB
Go

package o11ymeterconnector
import (
"context"
"github.com/hanzoai/otel-collector/connectors/o11ymeterconnector/internal/metadata"
"go.opentelemetry.io/collector/connector"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/metric"
)
const (
acceptedAttribute string = "accepted"
sentAttribute string = "sent"
signalAttribute string = "signal"
)
var (
connectorRoleReceiver connectorRoles = "receiver"
connectorRoleExporter connectorRoles = "exporter"
)
type connectorRoles string
type meterTelemetry struct {
attributes []attribute.KeyValue
counters map[connectorRoles]metric.Int64Counter
}
func newMeterTelemetry(set connector.Settings) (*meterTelemetry, error) {
telemetryBuilder, err := metadata.NewTelemetryBuilder(set.TelemetrySettings)
if err != nil {
return nil, err
}
counters := make(map[connectorRoles]metric.Int64Counter)
counters[connectorRoleReceiver] = telemetryBuilder.ConnectorReceivedItemsCount
counters[connectorRoleExporter] = telemetryBuilder.ConnectorProducedItemsCount
return &meterTelemetry{
attributes: []attribute.KeyValue{
attribute.String("connector", set.ID.String()),
},
counters: counters,
}, nil
}
func (telemetry *meterTelemetry) record(ctx context.Context, role connectorRoles, value int64, attrs ...attribute.KeyValue) {
telemetry.
counters[role].
Add(
ctx,
value,
metric.WithAttributes(append(telemetry.attributes, attrs...)...),
)
}