Giter Site home page Giter Site logo

blumamir / opentelemetry-proto Goto Github PK

View Code? Open in Web Editor NEW

This project forked from open-telemetry/opentelemetry-proto

0.0 0.0 0.0 516 KB

Protobuf definitions for the OpenTelemetry protocol (OTLP)

Home Page: https://opentelemetry.io

License: Apache License 2.0

Makefile 100.00%

opentelemetry-proto's Introduction

Language Independent Interface Types For OpenTelemetry

Build Check

The proto files can be consumed as GIT submodules or copied and built directly in the consumer project.

The compiled files are published to central repositories (Maven, ...) from OpenTelemetry client libraries.

See contribution guidelines if you would like to make any changes.

OTLP/JSON

See additional requirements for OTLP/JSON wire representation here.

Generate gRPC Client Libraries

To generate the raw gRPC client libraries, use make gen-${LANGUAGE}. Currently supported languages are:

  • cpp
  • csharp
  • go
  • java
  • objc
  • openapi (swagger)
  • php
  • python
  • ruby

Maturity Level

Component Maturity
Binary Protobuf Encoding
common/* Stable
metrics/*
collector/metrics/*
Stable
resource/* Stable
trace/trace.proto
collector/trace/*
Stable
trace/trace_config.proto Alpha
logs/*
collector/logs/*
Stable
JSON encoding
All messages Alpha

(See maturity-matrix.yaml for definition of maturity levels).

Stability Definition

Components marked Stable provide the following guarantees:

  • Field types, numbers and names will not change.
  • Numbers assigned to enum choices will not change.
  • Service names and service package names will not change.
  • Service operation names, parameter and return types will not change.

The following changes are allowed:

  • Message names may change.
  • Enum names may change.
  • Enum choice names may change. This is allowed because enum choice names are not sent on the wire.
  • The location of messages and enums, i.e. whether they are declared at the top lexical scope or nested inside another message may change.
  • Package names may change.
  • Directory structure, location and the name of the files may change.

Note that none of the above allowed changes affects the binary wire representation or the JSON wire representation.

No guarantees are provided whatsoever about the stability of the code that is generated from the .proto files by any particular code generator.

Experiments

In some cases we are trying to experiment with different features. In this case, we recommend using an "experimental" sub-directory instead of adding them to any protocol version. These protocols should not be used, except for development/testing purposes.

Another review must be conducted for experimental protocols to join the main project.

opentelemetry-proto's People

Contributors

aabmass avatar alanwest avatar andrewhsu avatar aneurysm9 avatar arminru avatar bogdandrutu avatar chalin avatar cnnradams avatar draffensperger avatar gcacace avatar hdost avatar jkwatson avatar jmacd avatar joaopgrassi avatar jsuereth avatar kovrus avatar lakamsani avatar mralias avatar nilebox avatar oberon00 avatar pavolloffay avatar pirgeo avatar pmm-sumo avatar redhotpenguin avatar rhcarvalho avatar sergeykanzhelev avatar songy23 avatar tigrannajaryan avatar tsloughter avatar x13n avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.