package otel import ( "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/sdk/resource" semconv "go.opentelemetry.io/otel/semconv/v1.18.0" ) // newResource builds an OTel resource for the Gerbil service. func newResource(serviceName, serviceVersion, deploymentEnv string) (*resource.Resource, error) { attrs := []attribute.KeyValue{ semconv.ServiceName(serviceName), } if serviceVersion != "" { attrs = append(attrs, semconv.ServiceVersion(serviceVersion)) } if deploymentEnv != "" { attrs = append(attrs, semconv.DeploymentEnvironment(deploymentEnv)) } return resource.Merge( resource.Default(), resource.NewSchemaless(attrs...), ) }