Skip to content

Commit

Permalink
Merge branch 'main' into flo-profiles-exclude
Browse files Browse the repository at this point in the history
  • Loading branch information
florianl authored Aug 24, 2024
2 parents 5c00b84 + e6923b7 commit 9ca460d
Show file tree
Hide file tree
Showing 10 changed files with 131 additions and 100 deletions.
12 changes: 3 additions & 9 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,7 @@
#

# Global owners, will be the owners for everything in the repo. Membership is tracked via https://github.com/open-telemetry/community/blob/main/community-members.md
* @open-telemetry/specs-approvers
* @open-telemetry/spec-sponsors

# Trace owners (global + trace)
opentelemetry/proto/trace/ @open-telemetry/specs-approvers @open-telemetry/specs-trace-approvers

# Metrics owners (global + metrics)
opentelemetry/proto/metrics/ @open-telemetry/specs-approvers @open-telemetry/specs-metrics-approvers

# Logs owners (global + logs)
opentelemetry/proto/logs/ @open-telemetry/specs-approvers @open-telemetry/specs-logs-approvers
# Profiles owners (global + profiles)
opentelemetry/proto/profiles @open-telemetry/spec-sponsors @open-telemetry/profiling-maintainers
13 changes: 11 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,20 @@

## Unreleased

Full list of differences found in [this compare](https://github.com/open-telemetry/opentelemetry-proto/compare/v1.1.0...main).
The full list of changes can be found in the compare view for the respective release at <https://github.com/open-telemetry/opentelemetry-proto/releases>.

### Added
## 1.3.2 - 2024-06-28

### Changed

* profiles: add missing java_package option to pprofextended. [#558](https://github.com/open-telemetry/opentelemetry-proto/pull/558)

## 1.3.1 - 2024-05-07

### Changed

* profiles: fix versioning in selector. [#551](https://github.com/open-telemetry/opentelemetry-proto/pull/551)

## 1.3.0 - 2024-04-24

### Added
Expand All @@ -23,6 +31,7 @@ Full list of differences found in [this compare](https://github.com/open-telemet
[#484](https://github.com/open-telemetry/opentelemetry-proto/pull/484)
* Add metric.metadata for supporting additional metadata on metrics
[#514](https://github.com/open-telemetry/opentelemetry-proto/pull/514)
* Add example of an Event [#538](https://github.com/open-telemetry/opentelemetry-proto/pull/538)

### Changed

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Contributing

Read OpenTelemetry project [contributing
guide](https://github.com/open-telemetry/community/blob/main/CONTRIBUTING.md)
guide](https://github.com/open-telemetry/community/blob/main/guides/contributor/README.md)
for general information about the project.

## Prerequisites
Expand Down
97 changes: 15 additions & 82 deletions RELEASING.md
Original file line number Diff line number Diff line change
@@ -1,89 +1,22 @@
# How to Create a Release of OpenTelemetry Proto (for Maintainers Only)
# How to Create a Release

## Tagging the Release
_Instruction for Maintainers only._

Our release branches follow the naming convention of `v<major>.<minor>.x`, while
the tags include the patch version `v<major>.<minor>.<patch>`. For example, the
same branch `v0.3.x` would be used to create all `v0.3` tags (e.g. `v0.3.0`,
`v0.3.1`).
- Prepare the release by updating [CHANGELOG.md](CHANGELOG.md), see for example
[this PR](https://github.com/open-telemetry/opentelemetry-proto/pull/537).
Merge the PR. From this point on no new PRs can be merged until the release is complete.

In this section upstream repository refers to the main opentelemetry-proto
github repository.
- Go to Github [release page](https://github.com/open-telemetry/opentelemetry-proto/releases),
click `Draft a new release`.

Before any push to the upstream repository you need to create a [personal access
token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/).
- Click "Choose a tag" and specify the next version number. The Target branch should be "main".

1. Create the release branch and push it to GitHub:
- Click "Generate release notes" to get a draft release note. Remove editorial
changes from the notes and any other changes that you don't want in the release notes.
In addition, you can refer to [CHANGELOG.md](CHANGELOG.md) for a list of major changes since last release.

```bash
MAJOR=0 MINOR=3 PATCH=0 # Set appropriately for new release
git checkout -b v$MAJOR.$MINOR.x main
git push upstream v$MAJOR.$MINOR.x
```
- Click "Publish Release".

2. Enable branch protection for the new branch, if you have admin access.
Otherwise, let someone with admin access know that there is a new release
branch.

- Open the branch protection settings for the new branch, by following
[Github's instructions](https://help.github.com/articles/configuring-protected-branches/).
- Copy the settings from a previous branch, i.e., check
- `Protect this branch`
- `Require pull request reviews before merging`
- `Require status checks to pass before merging`
- `Include administrators`
Enable the following required status checks:
- `cla/linuxfoundation`
- `ci/circleci: build`
- Uncheck everything else.
- Click "Save changes".
3. For `vMajor.Minor.x` branch:
- Create and push a tag:
```bash
git checkout v$MAJOR.$MINOR.x
git pull upstream v$MAJOR.$MINOR.x
git tag -a v$MAJOR.$MINOR.$PATCH -m "Version $MAJOR.$MINOR.$PATCH"
git push upstream v$MAJOR.$MINOR.$PATCH
```
## Patch Release
All patch releases should include only bug-fixes, and must avoid
adding/modifying the public APIs. To cherry-pick one commit use the following
instructions:
- Create and push a tag:
```bash
COMMIT=1224f0a # Set the right commit hash.
git checkout -b cherrypick v$MAJOR.$MINOR.x
git cherry-pick -x $COMMIT
git commit -a -m "Cherry-pick commit $COMMIT"
```
- Go through PR review and merge it to GitHub v$MAJOR.$MINOR.x branch.
- Tag a new patch release when all commits are merged.
## Announcement
Once deployment is done, go to Github [release
page](https://github.com/open-telemetry/opentelemetry-proto/releases), press
`Draft a new release` to write release notes about the new release.
You can use `git log upstream/v$MAJOR.$((MINOR-1)).x..upstream/v$MAJOR.$MINOR.x --graph --first-parent`
or the Github [compare tool](https://github.com/open-telemetry/opentelemetry-proto/compare/)
to view a summary of all commits since last release as a reference.
In addition, you can refer to [CHANGELOG.md](CHANGELOG.md)
for a list of major changes since last release.
## Update release versions in documentations and CHANGELOG files
After releasing is done, you need to update [README.md](README.md) and [CHANGELOG.md](CHANGELOG.md).
Create a PR to mark the new release in [CHANGELOG.md](CHANGELOG.md) on main branch.
Our tags follow the naming convention of `v1.<minor>.<patch>`. Increment `minor` by 1
and use `patch` value of 0 for new minor version releases. For patch releases keep `minor`
unchanged and increment the `patch`.
2 changes: 1 addition & 1 deletion docs/specification.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ OTLP defines the encoding of telemetry data and the protocol used to exchange
data between the client and the server.

This specification defines how OTLP is implemented over
[gRPC](https://grpc.io/) and HTTP 1.1 transports and specifies
[gRPC](https://grpc.io/) and HTTP transports and specifies
[Protocol Buffers schema](https://developers.google.com/protocol-buffers/docs/overview)
that is used for the payloads.

Expand Down
1 change: 1 addition & 0 deletions examples/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ that can be used as request payloads.
- Trace [trace.json](trace.json)
- Metrics [metrics.json](metrics.json)
- Logs [logs.json](logs.json)
- Events [events.json](events.json)

## Trying it out

Expand Down
75 changes: 75 additions & 0 deletions examples/events.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
"resourceLogs": [
{
"resource": {
"attributes": [
{
"key": "service.name",
"value": {
"stringValue": "my.service"
}
}
]
},
"scopeLogs": [
{
"scope": {
"name": "my.library",
"version": "1.0.0",
"attributes": [
{
"key": "my.scope.attribute",
"value": {
"stringValue": "some scope attribute"
}
}
]
},
"logRecords": [
{
"timeUnixNano": "1544712660300000000",
"observedTimeUnixNano": "1544712660300000000",
"severityNumber": 9,
"attributes": [
{
"key": "event.name",
"value": {
"stringValue": "browser.page_view"
}
}
],
"body": {
"kvlistValue": [
{
"key": "type",
"value": {
"intValue": "0"
}
},
{
"key": "url",
"value": {
"stringValue": "https://www.guidgenerator.com/online-guid-generator.aspx"
}
},
{
"key": "referrer",
"value": {
"stringValue": "https://wwww.google.com"
}
},
{
"key": "title",
"value": {
"stringValue": "Free Online GUID Generator"
}
}
]
}
}
]
}
]
}
]
}
21 changes: 19 additions & 2 deletions opentelemetry/proto/metrics/v1/metrics.proto
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,24 @@ option go_package = "go.opentelemetry.io/proto/otlp/metrics/v1";
// storage, OR can be embedded by other protocols that transfer OTLP metrics
// data but do not implement the OTLP protocol.
//
// MetricsData
// └─── ResourceMetrics
// ├── Resource
// ├── SchemaURL
// └── ScopeMetrics
// ├── Scope
// ├── SchemaURL
// └── Metric
// ├── Name
// ├── Description
// ├── Unit
// └── data
// ├── Gauge
// ├── Sum
// ├── Histogram
// ├── ExponentialHistogram
// └── Summary
//
// The main difference between this message and collector protocol is that
// in this message there will not be any "control" or "metadata" specific to
// OTLP protocol.
Expand Down Expand Up @@ -85,7 +103,6 @@ message ScopeMetrics {
//
// https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/data-model.md
//
//
// The data model and relation between entities is shown in the
// diagram below. Here, "DataPoint" is the term used to refer to any
// one of the specific data point value types, and "points" is the term used
Expand All @@ -97,7 +114,7 @@ message ScopeMetrics {
// - DataPoint contains timestamps, attributes, and one of the possible value type
// fields.
//
// Metric
// Metric
// +------------+
// |name |
// |description |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ package opentelemetry.proto.profiles.v1experimental;
import "opentelemetry/proto/common/v1/common.proto";

option csharp_namespace = "OpenTelemetry.Proto.Profiles.V1Experimental";
option java_multiple_files = true;
option java_package = "io.opentelemetry.proto.profiles.v1experimental";
option go_package = "go.opentelemetry.io/proto/otlp/profiles/v1experimental";

// Represents a complete profile, including sample types, samples,
Expand Down Expand Up @@ -203,7 +205,7 @@ enum AggregationTemporality {
11. A request is received, the system measures 1 request.
12. The 1 second collection cycle ends. A metric is exported for the
number of requests received over the interval of time t_1 to
t_0+1 with a value of 1.
t_1+1 with a value of 1.
Note: Even though, when reporting changes since last report time, using
CUMULATIVE is valid, it is not recommended. */
Expand Down Expand Up @@ -353,7 +355,7 @@ message Location {
bool is_folded = 5;

// Type of frame (e.g. kernel, native, python, hotspot, php). Index into string table.
uint32 type_index = 6;
int64 type_index = 6;

// References to attributes in Profile.attribute_table. [optional]
repeated uint64 attributes = 7;
Expand Down
2 changes: 1 addition & 1 deletion opentelemetry/proto/profiles/v1experimental/profiles.proto
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ option go_package = "go.opentelemetry.io/proto/otlp/profiles/v1experimental";
// ┌──────────────────┐
// │ Profile │
// └──────────────────┘
// │ 1-n
// │ n-1
// │ 1-n ┌───────────────────────────────────────┐
// ▼ │ ▽
// ┌──────────────────┐ 1-n ┌──────────────┐ ┌──────────┐
Expand Down

0 comments on commit 9ca460d

Please sign in to comment.