Documentation ¶
Index ¶
- Constants
- func InstrumentationDeviceNameToComponents(deviceName string) (ProgrammingLanguage, OtelSdkType, OtelSdkTier)
- func InstrumentationPluginName(language ProgrammingLanguage, otelSdk OtelSdk) string
- func InstrumentationPluginNameToComponents(pluginName string) (ProgrammingLanguage, OtelSdkType, OtelSdkTier)
- func SpanKindOdigosToOtel(kind SpanKind) trace.SpanKind
- type DestinationType
- type ObservabilitySignal
- type OdigosInstrumentationDevice
- type OdigosTier
- type OtelSdk
- type OtelSdkTier
- type OtelSdkType
- type PodWorkload
- type ProgrammingLanguage
- type SpanKind
Constants ¶
const OdigosResourceNamespace = "instrumentation.odigos.io"
This is the resource namespace of the lister in k8s device plugin manager. from the "github.com/kubevirt/device-plugin-manager" package source: GetResourceNamespace must return namespace (vendor ID) of implemented Lister. e.g. for resources in format "color.example.com/<color>" that would be "color.example.com".
Variables ¶
This section is empty.
Functions ¶
func InstrumentationDeviceNameToComponents ¶ added in v1.0.11
func InstrumentationDeviceNameToComponents(deviceName string) (ProgrammingLanguage, OtelSdkType, OtelSdkTier)
func InstrumentationPluginName ¶ added in v1.0.11
func InstrumentationPluginName(language ProgrammingLanguage, otelSdk OtelSdk) string
func InstrumentationPluginNameToComponents ¶ added in v1.0.37
func InstrumentationPluginNameToComponents(pluginName string) (ProgrammingLanguage, OtelSdkType, OtelSdkTier)
func SpanKindOdigosToOtel ¶ added in v1.0.4
Types ¶
type DestinationType ¶
type DestinationType string
const ( MiddlewareDestinationType DestinationType = "middleware" GrafanaCloudPrometheusDestinationType DestinationType = "grafanacloudprometheus" GrafanaCloudTempoDestinationType DestinationType = "grafanacloudtempo" GrafanaCloudLokiDestinationType DestinationType = "grafanacloudloki" DatadogDestinationType DestinationType = "datadog" HoneycombDestinationType DestinationType = "honeycomb" NewRelicDestinationType DestinationType = "newrelic" LogzioDestinationType DestinationType = "logzio" PrometheusDestinationType DestinationType = "prometheus" LokiDestinationType DestinationType = "loki" TempoDestinationType DestinationType = "tempo" JaegerDestinationType DestinationType = "jaeger" ElasticsearchDestinationType DestinationType = "elasticsearch" QuickwitDestinationType DestinationType = "quickwit" GenericOTLPDestinationType DestinationType = "otlp" OtlpHttpDestinationType DestinationType = "otlphttp" SignozDestinationType DestinationType = "signoz" QrynDestinationType DestinationType = "qryn" OpsVerseDestinationType DestinationType = "opsverse" SplunkDestinationType DestinationType = "splunk" LightstepDestinationType DestinationType = "lightstep" GoogleCloudDestinationType DestinationType = "googlecloud" SentryDestinationType DestinationType = "sentry" GCSDestinationType DestinationType = "gcs" AWSS3DestinationType DestinationType = "s3" AzureBlobDestinationType DestinationType = "azureblob" DynatraceDestinationType DestinationType = "dynatrace" ChronosphereDestinationType DestinationType = "chronosphere" ElasticAPMDestinationType DestinationType = "elasticapm" AxiomDestinationType DestinationType = "axiom" SumoLogicDestinationType DestinationType = "sumologic" CoralogixDestinationType DestinationType = "coralogix" )
type ObservabilitySignal ¶
type ObservabilitySignal string
+kubebuilder:validation:Enum=LOGS;TRACES;METRICS
const ( LogsObservabilitySignal ObservabilitySignal = "LOGS" TracesObservabilitySignal ObservabilitySignal = "TRACES" MetricsObservabilitySignal ObservabilitySignal = "METRICS" )
type OdigosInstrumentationDevice ¶
type OdigosInstrumentationDevice string
func InstrumentationDeviceName ¶ added in v1.0.11
func InstrumentationDeviceName(language ProgrammingLanguage, otelSdk OtelSdk) OdigosInstrumentationDevice
type OdigosTier ¶ added in v1.0.11
type OdigosTier string
const ( // community is the opensource tier of odigos CommunityOdigosTier OdigosTier = "community" // cloud is the SaaS offering of odigos CloudOdigosTier OdigosTier = "cloud" // on premises comes with enterprise features and does not require // network connectivity to odigos cloud OnPremOdigosTier OdigosTier = "onprem" )
type OtelSdk ¶ added in v1.0.11
type OtelSdk struct { SdkType OtelSdkType `json:"sdkType"` SdkTier OtelSdkTier `json:"sdkTier"` }
type OtelSdkTier ¶ added in v1.0.11
type OtelSdkTier string
const ( CommunityOtelSdkTier OtelSdkTier = "community" EnterpriseOtelSdkTier OtelSdkTier = "enterprise" )
type OtelSdkType ¶ added in v1.0.11
type OtelSdkType string
Odigos supports two types of OpenTelemetry SDKs: native and ebpf.
const ( // The native SDK is implemented in the language of the application and // is integrated into the application code via runtime support (e.g. Java agent). NativeOtelSdkType OtelSdkType = "native" // EbpfOtelSdkType SDK can record telemetry data from the application with eBPF // code injected into the application process. EbpfOtelSdkType OtelSdkType = "ebpf" )
type PodWorkload ¶
PodWorkload represents the higher-level controller managing a specific Pod within a Kubernetes cluster. It contains essential details about the controller such as its Name, Namespace, and Kind. 'Kind' refers to the type of controller, which can be a Deployment, StatefulSet, or DaemonSet. This struct is useful for identifying and interacting with the overarching entity that governs the lifecycle and behavior of a Pod, especially in contexts where understanding the relationship between a Pod and its controlling workload is crucial.
type ProgrammingLanguage ¶
type ProgrammingLanguage string
+kubebuilder:validation:Enum=java;python;go;dotnet;javascript;mysql
const ( JavaProgrammingLanguage ProgrammingLanguage = "java" PythonProgrammingLanguage ProgrammingLanguage = "python" GoProgrammingLanguage ProgrammingLanguage = "go" DotNetProgrammingLanguage ProgrammingLanguage = "dotnet" JavascriptProgrammingLanguage ProgrammingLanguage = "javascript" // This is an experimental feature, It is not a language // but in order to avoid huge refactoring we are adding it here for now MySQLProgrammingLanguage ProgrammingLanguage = "mysql" )
type SpanKind ¶ added in v1.0.4
type SpanKind string
SpanKind is already defined in opentelemetry-go as int. this value can go into the CRD in which case it will be string for user convenience. +kubebuilder:validation:Enum=client;server;producer;consumer;internal