An open API service providing repository metadata for many open source software ecosystems.

Package Usage: go: go.opentelemetry.io/otel/metric

Package metric provides the OpenTelemetry API used to measure metrics about source code operation. This API is separate from its implementation so the instrumentation built from it is reusable. See go.opentelemetry.io/otel/sdk/metric for the official OpenTelemetry implementation of this API. All measurements made with this package are made via instruments. These instruments are created by a Meter which itself is created by a MeterProvider. Applications need to accept a MeterProvider implementation as a starting point when instrumenting. This can be done directly, or by using the OpenTelemetry global MeterProvider via GetMeterProvider. Using an appropriately named Meter from the accepted MeterProvider, instrumentation can then be built from the Meter's instruments. Each instrument is designed to make measurements of a particular type. Broadly, all instruments fall into two overlapping logical categories: asynchronous or synchronous, and int64 or float64. All synchronous instruments (Int64Counter, Int64UpDownCounter, Int64Histogram, Float64Counter, Float64UpDownCounter, and Float64Histogram) are used to measure the operation and performance of source code during the source code execution. These instruments only make measurements when the source code they instrument is run. All asynchronous instruments (Int64ObservableCounter, Int64ObservableUpDownCounter, Int64ObservableGauge, Float64ObservableCounter, Float64ObservableUpDownCounter, and Float64ObservableGauge) are used to measure metrics outside of the execution of source code. They are said to make "observations" via a callback function called once every measurement collection cycle. Each instrument is also grouped by the value type it measures. Either int64 or float64. The value being measured will dictate which instrument in these categories to use. Outside of these two broad categories, instruments are described by the function they are designed to serve. All Counters (Int64Counter, Float64Counter, Int64ObservableCounter, and Float64ObservableCounter) are designed to measure values that never decrease in value, but instead only incrementally increase in value. UpDownCounters (Int64UpDownCounter, Float64UpDownCounter, Int64ObservableUpDownCounter, and Float64ObservableUpDownCounter) on the other hand, are designed to measure values that can increase and decrease. When more information needs to be conveyed about all the synchronous measurements made during a collection cycle, a Histogram (Int64Histogram and Float64Histogram) should be used. Finally, when just the most recent measurement needs to be conveyed about an asynchronous measurement, a Gauge (Int64ObservableGauge and Float64ObservableGauge) should be used. See the OpenTelemetry documentation for more information about instruments and their intended use. OpenTelemetry defines an instrument name syntax that restricts what instrument names are allowed. Instrument names should ... To ensure compatibility with observability platforms, all instruments created need to conform to this syntax. Not all implementations of the API will validate these names, it is the callers responsibility to ensure compliance. Measurements are made by recording values and information about the values with an instrument. How these measurements are recorded depends on the instrument. Measurements for synchronous instruments (Int64Counter, Int64UpDownCounter, Int64Histogram, Float64Counter, Float64UpDownCounter, and Float64Histogram) are recorded using the instrument methods directly. All counter instruments have an Add method that is used to measure an increment value, and all histogram instruments have a Record method to measure a data point. Asynchronous instruments (Int64ObservableCounter, Int64ObservableUpDownCounter, Int64ObservableGauge, Float64ObservableCounter, Float64ObservableUpDownCounter, and Float64ObservableGauge) record measurements within a callback function. The callback is registered with the Meter which ensures the callback is called once per collection cycle. A callback can be registered two ways: during the instrument's creation using an option, or later using the RegisterCallback method of the Meter that created the instrument. If the following criteria are met, an option (WithInt64Callback or WithFloat64Callback) can be used during the asynchronous instrument's creation to register a callback (Int64Callback or Float64Callback, respectively): If the criteria are not met, use the RegisterCallback method of the Meter that created the instrument to register a Callback. This package does not conform to the standard Go versioning policy, all of its interfaces may have methods added to them without a package major version bump. This non-standard API evolution could surprise an uninformed implementation author. They could unknowingly build their implementation in a way that would result in a runtime panic for their users that update to the new API. The API is designed to help inform an instrumentation author about this non-standard API evolution. It requires them to choose a default behavior for unimplemented interface methods. There are three behavior choices they can make: All interfaces in this API embed a corresponding interface from go.opentelemetry.io/otel/metric/embedded. If an author wants the default behavior of their implementations to be a compilation failure, signaling to their users they need to update to the latest version of that implementation, they need to embed the corresponding interface from go.opentelemetry.io/otel/metric/embedded in their implementation. For example, If an author wants the default behavior of their implementations to a panic, they need to embed the API interface directly. This is not a recommended behavior as it could lead to publishing packages that contain runtime panics when users update other package that use newer versions of go.opentelemetry.io/otel/metric. Finally, an author can embed another implementation in theirs. The embedded implementation will be used for methods not defined by the author. For example, an author who wants to default to silently dropping the call can use go.opentelemetry.io/otel/metric/noop: It is strongly recommended that authors only embed go.opentelemetry.io/otel/metric/noop if they choose this default behavior. That implementation is the only one OpenTelemetry authors can guarantee will fully implement all the API interfaces when a user updates their API.
51 versions
Latest release: 4 months ago
8,263 dependent packages

View more package details: https://packages.ecosyste.ms/registries/proxy.golang.org/packages/go.opentelemetry.io/otel/metric

View more repository details: http://repos.ecosyste.ms/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-go

Dependent Repos 40,014

kmodules/resource-metadata
API for defining metadata about Kubernetes resources

Size: 85.4 MB - Last synced: 4 days ago - Pushed: 4 days ago

brotherlogic/logging
Logging for system

Size: 2.76 MB - Last synced: 15 days ago - Pushed: 16 days ago

ossf/scorecard-action
Official GitHub Action for OpenSSF Scorecard.

Size: 6.93 MB - Last synced: about 6 hours ago - Pushed: 5 days ago

zeromike/syft Fork of anchore/syft
CLI tool and library for generating a Software Bill of Materials from container images and filesystems

Size: 10.4 MB - Last synced: 11 months ago - Pushed: almost 3 years ago

aberja/argo Fork of argoproj/argo-workflows
Argo Workflows: Get stuff done with Kubernetes.

Size: 66.8 MB - Last synced: 11 months ago - Pushed: about 2 years ago

krasish/test-infra Fork of kyma-project/test-infra
Test infrastructure for the Kyma project.

Size: 15.3 MB - Last synced: about 2 years ago - Pushed: about 2 years ago

philip-teleport/teleport Fork of gravitational/teleport
Certificate authority and access plane for SSH, Kubernetes, web apps, databases and desktops

Size: 521 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

spolti/kie-cloud-operator Fork of kiegroup/kie-cloud-operator
OCP Operator for KIE

Size: 100 MB - Last synced: 7 months ago - Pushed: over 1 year ago

cheqd/tendermint Fork of tendermint/tendermint
⟁ Tendermint Core (BFT Consensus) in Go

Size: 142 MB - Last synced: 11 months ago - Pushed: over 2 years ago

ahmedabu98/beam Fork of apache/beam
Apache Beam is a unified programming model for Batch and Streaming

Size: 392 MB - Last synced: 5 days ago - Pushed: 5 days ago

fahedouch/crossplane-runtime Fork of crossplane/crossplane-runtime
A set of libraries for writing Crossplane controllers.

Size: 2.37 MB - Last synced: 11 months ago - Pushed: 11 months ago

nakamasato/mysql-operator
Manage MySQL users, databases, schemas, etc.

Size: 1.75 MB - Last synced: 1 day ago - Pushed: 1 day ago

observIQ/grafana-agent Fork of grafana/agent
Telemetry agent for the LGTM stack.

Size: 48.3 MB - Last synced: over 1 year ago - Pushed: over 1 year ago

tharun208/loki Fork of grafana/loki
Like Prometheus, but for logs.

Size: 168 MB - Last synced: about 1 year ago - Pushed: about 2 years ago

energy-spectrum/Go_bot

Size: 67.4 KB - Last synced: 11 months ago - Pushed: about 2 years ago

energy-spectrum/Test_aprel

Size: 2.22 MB - Last synced: 11 months ago - Pushed: almost 2 years ago

energy-spectrum/Test1

Size: 75.2 KB - Last synced: 11 months ago - Pushed: about 2 years ago

overmindtech/stdlib-source
Standard library for global items

Size: 926 KB - Last synced: 4 months ago - Pushed: 4 months ago

antonyggvzvmnxxcx/linkerd2 Fork of linkerd/linkerd2
Ultralight, security-first service mesh for Kubernetes. Main repo for Linkerd 2.x.

Size: 33.5 MB - Last synced: about 2 years ago - Pushed: about 2 years ago

jan--f/telemeter Fork of openshift/telemeter
Prometheus push federation

Size: 35 MB - Last synced: almost 2 years ago - Pushed: almost 2 years ago

gtully/activemq-artemis-operator Fork of arkmq-org/activemq-artemis-operator

Size: 55.8 MB - Last synced: 16 days ago - Pushed: 17 days ago

rancher-max/rancher Fork of rancher/rancher
Complete container management platform

Size: 140 MB - Last synced: about 1 month ago - Pushed: about 1 month ago

carlkyrillos/integreatly-operator Fork of integr8ly/integreatly-operator
An Openshift Operator based on the Operator SDK for installing and reconciling Integreatly services

Size: 128 MB - Last synced: 6 months ago - Pushed: 6 months ago

mdisibio/tempo Fork of grafana/tempo
Grafana Tempo is a high volume, minimal dependency trace storage.

Size: 159 MB - Last synced: 6 days ago - Pushed: 6 days ago

FairwindsOps/insights-cli
A command line tool for Fairwinds Insights

Size: 23.4 MB - Last synced: 14 days ago - Pushed: 26 days ago

paketo-buildpacks/go
A Cloud Native Buildpack for Go

Size: 83.2 MB - Last synced: 1 day ago - Pushed: 1 day ago

paketo-buildpacks/dotnet-core
A Cloud Native Buildpack for .NET Core

Size: 176 MB - Last synced: 4 days ago - Pushed: 4 days ago

cilium/cilium-olm 📦

Size: 982 KB - Last synced: over 1 year ago - Pushed: almost 2 years ago

influxdata/influxdb-observability

Size: 1.8 MB - Last synced: 20 days ago - Pushed: about 1 month ago

stolostron/governance-policy-template-sync Fork of open-cluster-management-io/governance-policy-template-sync 📦

Size: 6.81 MB - Last synced: 11 months ago - Pushed: almost 2 years ago

Zondax/rosetta-filecoin-lib

Size: 455 KB - Last synced: about 1 month ago - Pushed: about 1 month ago

RafaySystems/terraform-provider-rafay
Rafay terraform provider

Size: 6.56 MB - Last synced: 10 days ago - Pushed: 10 days ago

IBM/ibm-commonui-operator
Operator used to install the common webui service

Size: 45.8 MB - Last synced: 7 days ago - Pushed: 7 days ago

outscale/cluster-api-provider-outscale
Cluster API Provider for Outscale enables automated Kubernetes cluster management on Outscale’s cloud, integrating with Cluster API for seamless scaling and deployment.

Size: 16.8 MB - Last synced: 5 days ago - Pushed: 5 days ago

Cha0sIDL/ZeroBot-Plugin Fork of FloatTech/ZeroBot-Plugin
基于 ZeroBot 的 OneBot 插件

Size: 28.4 MB - Last synced: 11 months ago - Pushed: over 1 year ago

sapcc/absent-metrics-operator
Absent Metrics Operator creates metric absence alerts atop Kubernetes

Size: 17 MB - Last synced: 4 days ago - Pushed: 9 days ago

stolostron/multicloud-operators-subscription-release
Managing helm release with operators for multicloud.

Size: 1.63 MB - Last synced: 25 days ago - Pushed: about 2 years ago

berty/labs
Berty Labs is a mobile app to explore IPFS on mobile

Size: 3.44 MB - Last synced: 23 days ago - Pushed: about 2 years ago

networkservicemesh/sdk-vpp

Size: 1.38 MB - Last synced: 9 days ago - Pushed: 9 days ago

elisasre/kops-autoscaler-openstack
Provide AutoScalingGroup capability to OpenStack Kops

Size: 17.7 MB - Last synced: about 4 hours ago - Pushed: about 5 hours ago

apache/submarine 📦
Submarine is Cloud Native Machine Learning Platform.

Size: 29.3 MB - Last synced: about 24 hours ago - Pushed: about 1 year ago

ekmixon/istio Fork of istio/istio
Connect, secure, control, and observe services.

Size: 199 MB - Last synced: 14 days ago - Pushed: 15 days ago

stashed/apimachinery
Stash API types and client-go

Size: 52.9 MB - Last synced: 20 days ago - Pushed: 2 months ago

vinted/prometheus Fork of prometheus/prometheus
The Prometheus monitoring system and time series database.

Size: 173 MB - Last synced: 5 months ago - Pushed: 5 months ago

choria-io/provisioner
Choria Server Provisioning System

Size: 4.62 MB - Last synced: 19 days ago - Pushed: 27 days ago

sigstore/rekor-monitor
Log monitor for Rekor to verify immutability and monitor entries

Size: 1.86 MB - Last synced: 6 days ago - Pushed: 6 days ago

codeboten/opentelemetry-lambda Fork of open-telemetry/opentelemetry-lambda

Size: 1.59 MB - Last synced: over 1 year ago - Pushed: over 1 year ago

moov-io/irs
Internal Revenue Service (IRS) Filing Information Returns Electronically (FIRE)

Size: 1.42 MB - Last synced: 12 days ago - Pushed: 12 days ago

moov-io/ach-test-harness
Programmatic and configurable ACH scenario testing of returns, NOC/corrections, reconciliation, etc.

Size: 1.07 MB - Last synced: 12 days ago - Pushed: 12 days ago

openshift/cluster-kube-descheduler-operator
An operator to run descheduler on OpenShift.

Size: 76.3 MB - Last synced: 7 days ago - Pushed: 7 days ago

rogue73/hugo Fork of gohugoio/hugo
The world’s fastest framework for building websites.

Size: 109 MB - Last synced: about 2 years ago - Pushed: about 2 years ago

akram/origin Fork of openshift/origin
Enterprise Kubernetes for Developers

Size: 1.18 GB - Last synced: 6 months ago - Pushed: 6 months ago

tts-tblock/kubernetes-client Fork of fabric8io/kubernetes-client
Java client for Kubernetes & OpenShift

Size: 449 MB - Last synced: about 2 years ago - Pushed: about 2 years ago

bf2fc6cc711aee1a0c2a/cos-tools
Tools and support script for the Managed Connector Service

Size: 22.9 MB - Last synced: 11 months ago - Pushed: almost 2 years ago