@volter/supercode-teams 0.2.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +119 -0
- package/attention.mjs +191 -0
- package/bin/fleet.mjs +151 -0
- package/bin/teams.mjs +291 -0
- package/bin/workspace/args.mjs +66 -0
- package/bin/workspace/files.mjs +110 -0
- package/bin/workspace/lifecycle.mjs +113 -0
- package/bin/workspace/volter-device.mjs +42 -0
- package/bin/workspace/volter-login.mjs +185 -0
- package/bin/workspace.mjs +726 -0
- package/browser-attach.mjs +90 -0
- package/client.mjs +212 -0
- package/connector/effects.mjs +95 -0
- package/connector/index.d.ts +69 -0
- package/connector/index.mjs +174 -0
- package/connector/native-continuation.d.ts +8 -0
- package/connector/native-continuation.mjs +50 -0
- package/connector/native-effects.mjs +164 -0
- package/context.mjs +34 -0
- package/contracts/adapter-map.json +16 -0
- package/contracts/index.d.ts +299 -0
- package/contracts/index.mjs +37 -0
- package/execution.mjs +206 -0
- package/fleet.mjs +78 -0
- package/index.mjs +12 -0
- package/machine-door.mjs +36 -0
- package/machine.mjs +1398 -0
- package/package.json +80 -0
- package/porthole-hook.cjs +137 -0
- package/remote/job-exec.py +146 -0
- package/remote/wire.py +23 -0
- package/server/arc2-transactions.mjs +125 -0
- package/server/attachment-relay.mjs +149 -0
- package/server/catalog.mjs +7 -0
- package/server/continuations.mjs +56 -0
- package/server/correlation.d.ts +4 -0
- package/server/correlation.mjs +17 -0
- package/server/effects-transactions.mjs +119 -0
- package/server/effects.mjs +97 -0
- package/server/event-routes.mjs +208 -0
- package/server/exports.mjs +46 -0
- package/server/harness-routes.mjs +248 -0
- package/server/index.d.ts +31 -0
- package/server/index.mjs +52 -0
- package/server/ingest.mjs +24 -0
- package/server/node-upgrade.mjs +39 -0
- package/server/otlp/collector-config.d.ts +2 -0
- package/server/otlp/collector-config.mjs +26 -0
- package/server/otlp/decoders/index.d.ts +63 -0
- package/server/otlp/decoders/index.mjs +311 -0
- package/server/otlp/index.d.ts +4 -0
- package/server/otlp/index.mjs +4 -0
- package/server/otlp/projection.d.ts +5 -0
- package/server/otlp/projection.mjs +17 -0
- package/server/otlp/receiver.d.ts +3 -0
- package/server/otlp/receiver.mjs +36 -0
- package/server/otlp/schema/google/protobuf/any.proto +162 -0
- package/server/otlp/schema/google/rpc/status.proto +48 -0
- package/server/otlp/schema/manifest.json +22 -0
- package/server/otlp/schema/opentelemetry/proto/collector/logs/v1/logs_service.proto +77 -0
- package/server/otlp/schema/opentelemetry/proto/collector/metrics/v1/metrics_service.proto +77 -0
- package/server/otlp/schema/opentelemetry/proto/collector/trace/v1/trace_service.proto +77 -0
- package/server/otlp/schema/opentelemetry/proto/common/v1/common.proto +154 -0
- package/server/otlp/schema/opentelemetry/proto/logs/v1/logs.proto +226 -0
- package/server/otlp/schema/opentelemetry/proto/metrics/v1/metrics.proto +735 -0
- package/server/otlp/schema/opentelemetry/proto/resource/v1/resource.proto +45 -0
- package/server/otlp/schema/opentelemetry/proto/trace/v1/trace.proto +359 -0
- package/server/otlp/transport.d.ts +10 -0
- package/server/otlp/transport.mjs +424 -0
- package/server/otlp/wire-codec.mjs +153 -0
- package/server/store-core.mjs +139 -0
- package/server/store-worker.mjs +23 -0
- package/worker/fetch-adapter.mjs +49 -0
- package/worker/index.mjs +127 -0
- package/worker/websocket-duplex.mjs +29 -0
- package/worker/wrangler.toml +38 -0
- package/workspace-client.d.ts +75 -0
- package/workspace-client.mjs +171 -0
- package/workspace-move.mjs +38 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
// Protocol Buffers - Google's data interchange format
|
|
2
|
+
// Copyright 2008 Google Inc. All rights reserved.
|
|
3
|
+
// https://developers.google.com/protocol-buffers/
|
|
4
|
+
//
|
|
5
|
+
// Redistribution and use in source and binary forms, with or without
|
|
6
|
+
// modification, are permitted provided that the following conditions are
|
|
7
|
+
// met:
|
|
8
|
+
//
|
|
9
|
+
// * Redistributions of source code must retain the above copyright
|
|
10
|
+
// notice, this list of conditions and the following disclaimer.
|
|
11
|
+
// * Redistributions in binary form must reproduce the above
|
|
12
|
+
// copyright notice, this list of conditions and the following disclaimer
|
|
13
|
+
// in the documentation and/or other materials provided with the
|
|
14
|
+
// distribution.
|
|
15
|
+
// * Neither the name of Google Inc. nor the names of its
|
|
16
|
+
// contributors may be used to endorse or promote products derived from
|
|
17
|
+
// this software without specific prior written permission.
|
|
18
|
+
//
|
|
19
|
+
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
20
|
+
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
21
|
+
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
22
|
+
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
23
|
+
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
24
|
+
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
25
|
+
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
26
|
+
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
27
|
+
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
28
|
+
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
29
|
+
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
30
|
+
|
|
31
|
+
syntax = "proto3";
|
|
32
|
+
|
|
33
|
+
package google.protobuf;
|
|
34
|
+
|
|
35
|
+
option go_package = "google.golang.org/protobuf/types/known/anypb";
|
|
36
|
+
option java_package = "com.google.protobuf";
|
|
37
|
+
option java_outer_classname = "AnyProto";
|
|
38
|
+
option java_multiple_files = true;
|
|
39
|
+
option objc_class_prefix = "GPB";
|
|
40
|
+
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
|
|
41
|
+
|
|
42
|
+
// `Any` contains an arbitrary serialized protocol buffer message along with a
|
|
43
|
+
// URL that describes the type of the serialized message.
|
|
44
|
+
//
|
|
45
|
+
// Protobuf library provides support to pack/unpack Any values in the form
|
|
46
|
+
// of utility functions or additional generated methods of the Any type.
|
|
47
|
+
//
|
|
48
|
+
// Example 1: Pack and unpack a message in C++.
|
|
49
|
+
//
|
|
50
|
+
// Foo foo = ...;
|
|
51
|
+
// Any any;
|
|
52
|
+
// any.PackFrom(foo);
|
|
53
|
+
// ...
|
|
54
|
+
// if (any.UnpackTo(&foo)) {
|
|
55
|
+
// ...
|
|
56
|
+
// }
|
|
57
|
+
//
|
|
58
|
+
// Example 2: Pack and unpack a message in Java.
|
|
59
|
+
//
|
|
60
|
+
// Foo foo = ...;
|
|
61
|
+
// Any any = Any.pack(foo);
|
|
62
|
+
// ...
|
|
63
|
+
// if (any.is(Foo.class)) {
|
|
64
|
+
// foo = any.unpack(Foo.class);
|
|
65
|
+
// }
|
|
66
|
+
// // or ...
|
|
67
|
+
// if (any.isSameTypeAs(Foo.getDefaultInstance())) {
|
|
68
|
+
// foo = any.unpack(Foo.getDefaultInstance());
|
|
69
|
+
// }
|
|
70
|
+
//
|
|
71
|
+
// Example 3: Pack and unpack a message in Python.
|
|
72
|
+
//
|
|
73
|
+
// foo = Foo(...)
|
|
74
|
+
// any = Any()
|
|
75
|
+
// any.Pack(foo)
|
|
76
|
+
// ...
|
|
77
|
+
// if any.Is(Foo.DESCRIPTOR):
|
|
78
|
+
// any.Unpack(foo)
|
|
79
|
+
// ...
|
|
80
|
+
//
|
|
81
|
+
// Example 4: Pack and unpack a message in Go
|
|
82
|
+
//
|
|
83
|
+
// foo := &pb.Foo{...}
|
|
84
|
+
// any, err := anypb.New(foo)
|
|
85
|
+
// if err != nil {
|
|
86
|
+
// ...
|
|
87
|
+
// }
|
|
88
|
+
// ...
|
|
89
|
+
// foo := &pb.Foo{}
|
|
90
|
+
// if err := any.UnmarshalTo(foo); err != nil {
|
|
91
|
+
// ...
|
|
92
|
+
// }
|
|
93
|
+
//
|
|
94
|
+
// The pack methods provided by protobuf library will by default use
|
|
95
|
+
// 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
|
96
|
+
// methods only use the fully qualified type name after the last '/'
|
|
97
|
+
// in the type URL, for example "foo.bar.com/x/y.z" will yield type
|
|
98
|
+
// name "y.z".
|
|
99
|
+
//
|
|
100
|
+
// JSON
|
|
101
|
+
// ====
|
|
102
|
+
// The JSON representation of an `Any` value uses the regular
|
|
103
|
+
// representation of the deserialized, embedded message, with an
|
|
104
|
+
// additional field `@type` which contains the type URL. Example:
|
|
105
|
+
//
|
|
106
|
+
// package google.profile;
|
|
107
|
+
// message Person {
|
|
108
|
+
// string first_name = 1;
|
|
109
|
+
// string last_name = 2;
|
|
110
|
+
// }
|
|
111
|
+
//
|
|
112
|
+
// {
|
|
113
|
+
// "@type": "type.googleapis.com/google.profile.Person",
|
|
114
|
+
// "firstName": <string>,
|
|
115
|
+
// "lastName": <string>
|
|
116
|
+
// }
|
|
117
|
+
//
|
|
118
|
+
// If the embedded message type is well-known and has a custom JSON
|
|
119
|
+
// representation, that representation will be embedded adding a field
|
|
120
|
+
// `value` which holds the custom JSON in addition to the `@type`
|
|
121
|
+
// field. Example (for message [google.protobuf.Duration][]):
|
|
122
|
+
//
|
|
123
|
+
// {
|
|
124
|
+
// "@type": "type.googleapis.com/google.protobuf.Duration",
|
|
125
|
+
// "value": "1.212s"
|
|
126
|
+
// }
|
|
127
|
+
//
|
|
128
|
+
message Any {
|
|
129
|
+
// A URL/resource name that uniquely identifies the type of the serialized
|
|
130
|
+
// protocol buffer message. This string must contain at least
|
|
131
|
+
// one "/" character. The last segment of the URL's path must represent
|
|
132
|
+
// the fully qualified name of the type (as in
|
|
133
|
+
// `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
134
|
+
// (e.g., leading "." is not accepted).
|
|
135
|
+
//
|
|
136
|
+
// In practice, teams usually precompile into the binary all types that they
|
|
137
|
+
// expect it to use in the context of Any. However, for URLs which use the
|
|
138
|
+
// scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
139
|
+
// server that maps type URLs to message definitions as follows:
|
|
140
|
+
//
|
|
141
|
+
// * If no scheme is provided, `https` is assumed.
|
|
142
|
+
// * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
143
|
+
// value in binary format, or produce an error.
|
|
144
|
+
// * Applications are allowed to cache lookup results based on the
|
|
145
|
+
// URL, or have them precompiled into a binary to avoid any
|
|
146
|
+
// lookup. Therefore, binary compatibility needs to be preserved
|
|
147
|
+
// on changes to types. (Use versioned type names to manage
|
|
148
|
+
// breaking changes.)
|
|
149
|
+
//
|
|
150
|
+
// Note: this functionality is not currently available in the official
|
|
151
|
+
// protobuf release, and it is not used for type URLs beginning with
|
|
152
|
+
// type.googleapis.com. As of May 2023, there are no widely used type server
|
|
153
|
+
// implementations and no plans to implement one.
|
|
154
|
+
//
|
|
155
|
+
// Schemes other than `http`, `https` (or the empty scheme) might be
|
|
156
|
+
// used with implementation specific semantics.
|
|
157
|
+
//
|
|
158
|
+
string type_url = 1;
|
|
159
|
+
|
|
160
|
+
// Must be a valid serialized protocol buffer of the above specified type.
|
|
161
|
+
bytes value = 2;
|
|
162
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// Copyright 2026 Google LLC
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
syntax = "proto3";
|
|
16
|
+
|
|
17
|
+
package google.rpc;
|
|
18
|
+
|
|
19
|
+
import "google/protobuf/any.proto";
|
|
20
|
+
|
|
21
|
+
option go_package = "google.golang.org/genproto/googleapis/rpc/status;status";
|
|
22
|
+
option java_multiple_files = true;
|
|
23
|
+
option java_outer_classname = "StatusProto";
|
|
24
|
+
option java_package = "com.google.rpc";
|
|
25
|
+
option objc_class_prefix = "RPC";
|
|
26
|
+
|
|
27
|
+
// The `Status` type defines a logical error model that is suitable for
|
|
28
|
+
// different programming environments, including REST APIs and RPC APIs. It is
|
|
29
|
+
// used by [gRPC](https://github.com/grpc). Each `Status` message contains
|
|
30
|
+
// three pieces of data: error code, error message, and error details.
|
|
31
|
+
//
|
|
32
|
+
// You can find out more about this error model and how to work with it in the
|
|
33
|
+
// [API Design Guide](https://cloud.google.com/apis/design/errors).
|
|
34
|
+
message Status {
|
|
35
|
+
// The status code, which should be an enum value of
|
|
36
|
+
// [google.rpc.Code][google.rpc.Code].
|
|
37
|
+
int32 code = 1;
|
|
38
|
+
|
|
39
|
+
// A developer-facing error message, which should be in English. Any
|
|
40
|
+
// user-facing error message should be localized and sent in the
|
|
41
|
+
// [google.rpc.Status.details][google.rpc.Status.details] field, or localized
|
|
42
|
+
// by the client.
|
|
43
|
+
string message = 2;
|
|
44
|
+
|
|
45
|
+
// A list of messages that carry the error details. There is a common set of
|
|
46
|
+
// message types for APIs to use.
|
|
47
|
+
repeated google.protobuf.Any details = 3;
|
|
48
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "opentelemetry-proto",
|
|
3
|
+
"version": "v1.11.0",
|
|
4
|
+
"commit": "790608c4d51e6ffc12210b541e8514cbed9e91a4",
|
|
5
|
+
"source": "https://github.com/open-telemetry/opentelemetry-proto/tree/v1.11.0/opentelemetry/proto",
|
|
6
|
+
"files": {
|
|
7
|
+
"common/v1/common.proto": "620560f3ad4c45d606f8a9c455f2b98089f0d511c5859c3eadd3ee630ae0d4d8",
|
|
8
|
+
"resource/v1/resource.proto": "e0a7cdc0ffcfeffaa2606e8611839735ebffaa2d6acdf33e9356f2c48ae692d3",
|
|
9
|
+
"logs/v1/logs.proto": "6b2e1eba0c01ae2da47927c63eabfaf3f151ee7ad846f2cdf3b2b71fb61004fe",
|
|
10
|
+
"trace/v1/trace.proto": "c3fb1385c90b8bc08a2a462e28b5d0c422c7b524a839f75f75e3cd9f64f36956",
|
|
11
|
+
"metrics/v1/metrics.proto": "68cf07fe34bc5111d7873b5547ca41f0312dc8976d2635d81fac553d5ba98757",
|
|
12
|
+
"collector/logs/v1/logs_service.proto": "0252687fc8f59d139ced709d383e83678e9bd4957bdbe76077242f1c32363fa5",
|
|
13
|
+
"collector/trace/v1/trace_service.proto": "03c8cc4e3e101087d884392d6eda32152ad5cd696e6344f50deaa59804a75c7a",
|
|
14
|
+
"collector/metrics/v1/metrics_service.proto": "2bb3c6adee5f7609c8a32c5e4b1ec57057320015e298e9cf136699a42abc24d7",
|
|
15
|
+
"google/rpc/status.proto": "f5bfd262e6705c7ae73f32e0ad8ee20ce8c0a2578df8c4f76ebf76b572f295ed",
|
|
16
|
+
"google/protobuf/any.proto": "bcf5de6ce463b1a38ff76b77955aa7e580b4ec12af34a927b1d45c9efb0faf66"
|
|
17
|
+
},
|
|
18
|
+
"additional_schema_sources": {
|
|
19
|
+
"google/rpc/status.proto": "https://github.com/googleapis/googleapis/blob/b102e68deb9df1efec8d6d796b6227ffbfc68728/google/rpc/status.proto",
|
|
20
|
+
"google/protobuf/any.proto": "https://github.com/protocolbuffers/protobuf/blob/v34.0/src/google/protobuf/any.proto"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
// Copyright 2020, OpenTelemetry Authors
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
syntax = "proto3";
|
|
16
|
+
|
|
17
|
+
package opentelemetry.proto.collector.logs.v1;
|
|
18
|
+
|
|
19
|
+
import "opentelemetry/proto/logs/v1/logs.proto";
|
|
20
|
+
|
|
21
|
+
option csharp_namespace = "OpenTelemetry.Proto.Collector.Logs.V1";
|
|
22
|
+
option java_multiple_files = true;
|
|
23
|
+
option java_package = "io.opentelemetry.proto.collector.logs.v1";
|
|
24
|
+
option java_outer_classname = "LogsServiceProto";
|
|
25
|
+
option go_package = "go.opentelemetry.io/proto/otlp/collector/logs/v1";
|
|
26
|
+
|
|
27
|
+
// Service that can be used to push logs between one Application instrumented with
|
|
28
|
+
// OpenTelemetry and an collector, or between an collector and a central collector (in this
|
|
29
|
+
// case logs are sent/received to/from multiple Applications).
|
|
30
|
+
service LogsService {
|
|
31
|
+
rpc Export(ExportLogsServiceRequest) returns (ExportLogsServiceResponse) {}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
message ExportLogsServiceRequest {
|
|
35
|
+
// An array of ResourceLogs.
|
|
36
|
+
// For data coming from a single resource this array will typically contain one
|
|
37
|
+
// element. Intermediary nodes (such as OpenTelemetry Collector) that receive
|
|
38
|
+
// data from multiple origins typically batch the data before forwarding further and
|
|
39
|
+
// in that case this array will contain multiple elements.
|
|
40
|
+
repeated opentelemetry.proto.logs.v1.ResourceLogs resource_logs = 1;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
message ExportLogsServiceResponse {
|
|
44
|
+
// The details of a partially successful export request.
|
|
45
|
+
//
|
|
46
|
+
// If the request is only partially accepted
|
|
47
|
+
// (i.e. when the server accepts only parts of the data and rejects the rest)
|
|
48
|
+
// the server MUST initialize the `partial_success` field and MUST
|
|
49
|
+
// set the `rejected_<signal>` with the number of items it rejected.
|
|
50
|
+
//
|
|
51
|
+
// Servers MAY also make use of the `partial_success` field to convey
|
|
52
|
+
// warnings/suggestions to senders even when the request was fully accepted.
|
|
53
|
+
// In such cases, the `rejected_<signal>` MUST have a value of `0` and
|
|
54
|
+
// the `error_message` MUST be non-empty.
|
|
55
|
+
//
|
|
56
|
+
// A `partial_success` message with an empty value (rejected_<signal> = 0 and
|
|
57
|
+
// `error_message` = "") is equivalent to it not being set/present. Senders
|
|
58
|
+
// SHOULD interpret it the same way as in the full success case.
|
|
59
|
+
ExportLogsPartialSuccess partial_success = 1;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
message ExportLogsPartialSuccess {
|
|
63
|
+
// The number of rejected log records.
|
|
64
|
+
//
|
|
65
|
+
// A `rejected_<signal>` field holding a `0` value indicates that the
|
|
66
|
+
// request was fully accepted.
|
|
67
|
+
int64 rejected_log_records = 1;
|
|
68
|
+
|
|
69
|
+
// A developer-facing human-readable message in English. It should be used
|
|
70
|
+
// either to explain why the server rejected parts of the data during a partial
|
|
71
|
+
// success or to convey warnings/suggestions during a full success. The message
|
|
72
|
+
// should offer guidance on how users can address such issues.
|
|
73
|
+
//
|
|
74
|
+
// error_message is an optional field. An error_message with an empty value
|
|
75
|
+
// is equivalent to it not being set.
|
|
76
|
+
string error_message = 2;
|
|
77
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
// Copyright 2019, OpenTelemetry Authors
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
syntax = "proto3";
|
|
16
|
+
|
|
17
|
+
package opentelemetry.proto.collector.metrics.v1;
|
|
18
|
+
|
|
19
|
+
import "opentelemetry/proto/metrics/v1/metrics.proto";
|
|
20
|
+
|
|
21
|
+
option csharp_namespace = "OpenTelemetry.Proto.Collector.Metrics.V1";
|
|
22
|
+
option java_multiple_files = true;
|
|
23
|
+
option java_package = "io.opentelemetry.proto.collector.metrics.v1";
|
|
24
|
+
option java_outer_classname = "MetricsServiceProto";
|
|
25
|
+
option go_package = "go.opentelemetry.io/proto/otlp/collector/metrics/v1";
|
|
26
|
+
|
|
27
|
+
// Service that can be used to push metrics between one Application
|
|
28
|
+
// instrumented with OpenTelemetry and a collector, or between a collector and a
|
|
29
|
+
// central collector.
|
|
30
|
+
service MetricsService {
|
|
31
|
+
rpc Export(ExportMetricsServiceRequest) returns (ExportMetricsServiceResponse) {}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
message ExportMetricsServiceRequest {
|
|
35
|
+
// An array of ResourceMetrics.
|
|
36
|
+
// For data coming from a single resource this array will typically contain one
|
|
37
|
+
// element. Intermediary nodes (such as OpenTelemetry Collector) that receive
|
|
38
|
+
// data from multiple origins typically batch the data before forwarding further and
|
|
39
|
+
// in that case this array will contain multiple elements.
|
|
40
|
+
repeated opentelemetry.proto.metrics.v1.ResourceMetrics resource_metrics = 1;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
message ExportMetricsServiceResponse {
|
|
44
|
+
// The details of a partially successful export request.
|
|
45
|
+
//
|
|
46
|
+
// If the request is only partially accepted
|
|
47
|
+
// (i.e. when the server accepts only parts of the data and rejects the rest)
|
|
48
|
+
// the server MUST initialize the `partial_success` field and MUST
|
|
49
|
+
// set the `rejected_<signal>` with the number of items it rejected.
|
|
50
|
+
//
|
|
51
|
+
// Servers MAY also make use of the `partial_success` field to convey
|
|
52
|
+
// warnings/suggestions to senders even when the request was fully accepted.
|
|
53
|
+
// In such cases, the `rejected_<signal>` MUST have a value of `0` and
|
|
54
|
+
// the `error_message` MUST be non-empty.
|
|
55
|
+
//
|
|
56
|
+
// A `partial_success` message with an empty value (rejected_<signal> = 0 and
|
|
57
|
+
// `error_message` = "") is equivalent to it not being set/present. Senders
|
|
58
|
+
// SHOULD interpret it the same way as in the full success case.
|
|
59
|
+
ExportMetricsPartialSuccess partial_success = 1;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
message ExportMetricsPartialSuccess {
|
|
63
|
+
// The number of rejected data points.
|
|
64
|
+
//
|
|
65
|
+
// A `rejected_<signal>` field holding a `0` value indicates that the
|
|
66
|
+
// request was fully accepted.
|
|
67
|
+
int64 rejected_data_points = 1;
|
|
68
|
+
|
|
69
|
+
// A developer-facing human-readable message in English. It should be used
|
|
70
|
+
// either to explain why the server rejected parts of the data during a partial
|
|
71
|
+
// success or to convey warnings/suggestions during a full success. The message
|
|
72
|
+
// should offer guidance on how users can address such issues.
|
|
73
|
+
//
|
|
74
|
+
// error_message is an optional field. An error_message with an empty value
|
|
75
|
+
// is equivalent to it not being set.
|
|
76
|
+
string error_message = 2;
|
|
77
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
// Copyright 2019, OpenTelemetry Authors
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
syntax = "proto3";
|
|
16
|
+
|
|
17
|
+
package opentelemetry.proto.collector.trace.v1;
|
|
18
|
+
|
|
19
|
+
import "opentelemetry/proto/trace/v1/trace.proto";
|
|
20
|
+
|
|
21
|
+
option csharp_namespace = "OpenTelemetry.Proto.Collector.Trace.V1";
|
|
22
|
+
option java_multiple_files = true;
|
|
23
|
+
option java_package = "io.opentelemetry.proto.collector.trace.v1";
|
|
24
|
+
option java_outer_classname = "TraceServiceProto";
|
|
25
|
+
option go_package = "go.opentelemetry.io/proto/otlp/collector/trace/v1";
|
|
26
|
+
|
|
27
|
+
// Service that can be used to push spans between one Application instrumented with
|
|
28
|
+
// OpenTelemetry and a collector, or between a collector and a central collector (in this
|
|
29
|
+
// case spans are sent/received to/from multiple Applications).
|
|
30
|
+
service TraceService {
|
|
31
|
+
rpc Export(ExportTraceServiceRequest) returns (ExportTraceServiceResponse) {}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
message ExportTraceServiceRequest {
|
|
35
|
+
// An array of ResourceSpans.
|
|
36
|
+
// For data coming from a single resource this array will typically contain one
|
|
37
|
+
// element. Intermediary nodes (such as OpenTelemetry Collector) that receive
|
|
38
|
+
// data from multiple origins typically batch the data before forwarding further and
|
|
39
|
+
// in that case this array will contain multiple elements.
|
|
40
|
+
repeated opentelemetry.proto.trace.v1.ResourceSpans resource_spans = 1;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
message ExportTraceServiceResponse {
|
|
44
|
+
// The details of a partially successful export request.
|
|
45
|
+
//
|
|
46
|
+
// If the request is only partially accepted
|
|
47
|
+
// (i.e. when the server accepts only parts of the data and rejects the rest)
|
|
48
|
+
// the server MUST initialize the `partial_success` field and MUST
|
|
49
|
+
// set the `rejected_<signal>` with the number of items it rejected.
|
|
50
|
+
//
|
|
51
|
+
// Servers MAY also make use of the `partial_success` field to convey
|
|
52
|
+
// warnings/suggestions to senders even when the request was fully accepted.
|
|
53
|
+
// In such cases, the `rejected_<signal>` MUST have a value of `0` and
|
|
54
|
+
// the `error_message` MUST be non-empty.
|
|
55
|
+
//
|
|
56
|
+
// A `partial_success` message with an empty value (rejected_<signal> = 0 and
|
|
57
|
+
// `error_message` = "") is equivalent to it not being set/present. Senders
|
|
58
|
+
// SHOULD interpret it the same way as in the full success case.
|
|
59
|
+
ExportTracePartialSuccess partial_success = 1;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
message ExportTracePartialSuccess {
|
|
63
|
+
// The number of rejected spans.
|
|
64
|
+
//
|
|
65
|
+
// A `rejected_<signal>` field holding a `0` value indicates that the
|
|
66
|
+
// request was fully accepted.
|
|
67
|
+
int64 rejected_spans = 1;
|
|
68
|
+
|
|
69
|
+
// A developer-facing human-readable message in English. It should be used
|
|
70
|
+
// either to explain why the server rejected parts of the data during a partial
|
|
71
|
+
// success or to convey warnings/suggestions during a full success. The message
|
|
72
|
+
// should offer guidance on how users can address such issues.
|
|
73
|
+
//
|
|
74
|
+
// error_message is an optional field. An error_message with an empty value
|
|
75
|
+
// is equivalent to it not being set.
|
|
76
|
+
string error_message = 2;
|
|
77
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
// Copyright 2019, OpenTelemetry Authors
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
syntax = "proto3";
|
|
16
|
+
|
|
17
|
+
package opentelemetry.proto.common.v1;
|
|
18
|
+
|
|
19
|
+
option csharp_namespace = "OpenTelemetry.Proto.Common.V1";
|
|
20
|
+
option java_multiple_files = true;
|
|
21
|
+
option java_package = "io.opentelemetry.proto.common.v1";
|
|
22
|
+
option java_outer_classname = "CommonProto";
|
|
23
|
+
option go_package = "go.opentelemetry.io/proto/otlp/common/v1";
|
|
24
|
+
|
|
25
|
+
// Represents any type of attribute value. AnyValue may contain a
|
|
26
|
+
// primitive value such as a string or integer or it may contain an arbitrary nested
|
|
27
|
+
// object containing arrays, key-value lists and primitives.
|
|
28
|
+
message AnyValue {
|
|
29
|
+
// The value is one of the listed fields. It is valid for all values to be unspecified
|
|
30
|
+
// in which case this AnyValue is considered to be "empty".
|
|
31
|
+
oneof value {
|
|
32
|
+
string string_value = 1;
|
|
33
|
+
bool bool_value = 2;
|
|
34
|
+
int64 int_value = 3;
|
|
35
|
+
double double_value = 4;
|
|
36
|
+
ArrayValue array_value = 5;
|
|
37
|
+
KeyValueList kvlist_value = 6;
|
|
38
|
+
bytes bytes_value = 7;
|
|
39
|
+
// Reference to the string value in ProfilesDictionary.string_table.
|
|
40
|
+
//
|
|
41
|
+
// Note: This is currently used exclusively in the Profiling signal.
|
|
42
|
+
// Implementers of OTLP receivers for signals other than Profiling should
|
|
43
|
+
// treat the presence of this value as a non-fatal issue.
|
|
44
|
+
// Log an error or warning indicating an unexpected field intended for the
|
|
45
|
+
// Profiling signal and process the data as if this value were absent or
|
|
46
|
+
// empty, ignoring its semantic content for the non-Profiling signal.
|
|
47
|
+
//
|
|
48
|
+
// Status: [Alpha]
|
|
49
|
+
int32 string_value_strindex = 8;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// ArrayValue is a list of AnyValue messages. We need ArrayValue as a message
|
|
54
|
+
// since oneof in AnyValue does not allow repeated fields.
|
|
55
|
+
message ArrayValue {
|
|
56
|
+
// Array of values. The array may be empty (contain 0 elements).
|
|
57
|
+
repeated AnyValue values = 1;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// KeyValueList is a list of KeyValue messages. We need KeyValueList as a message
|
|
61
|
+
// since `oneof` in AnyValue does not allow repeated fields. Everywhere else where we need
|
|
62
|
+
// a list of KeyValue messages (e.g. in Span) we use `repeated KeyValue` directly to
|
|
63
|
+
// avoid unnecessary extra wrapping (which slows down the protocol). The 2 approaches
|
|
64
|
+
// are semantically equivalent.
|
|
65
|
+
message KeyValueList {
|
|
66
|
+
// A collection of key/value pairs of key-value pairs. The list may be empty (may
|
|
67
|
+
// contain 0 elements).
|
|
68
|
+
//
|
|
69
|
+
// The keys MUST be unique (it is not allowed to have more than one
|
|
70
|
+
// value with the same key).
|
|
71
|
+
// The behavior of software that receives duplicated keys can be unpredictable.
|
|
72
|
+
repeated KeyValue values = 1;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Represents a key-value pair that is used to store Span attributes, Link
|
|
76
|
+
// attributes, etc.
|
|
77
|
+
message KeyValue {
|
|
78
|
+
// The key name of the pair.
|
|
79
|
+
// key_strindex MUST NOT be set if key is used.
|
|
80
|
+
string key = 1;
|
|
81
|
+
|
|
82
|
+
// The value of the pair.
|
|
83
|
+
AnyValue value = 2;
|
|
84
|
+
|
|
85
|
+
// Reference to the string key in ProfilesDictionary.string_table.
|
|
86
|
+
// key MUST NOT be set if key_strindex is used.
|
|
87
|
+
//
|
|
88
|
+
// Note: This is currently used exclusively in the Profiling signal.
|
|
89
|
+
// Implementers of OTLP receivers for signals other than Profiling should
|
|
90
|
+
// treat the presence of this key as a non-fatal issue.
|
|
91
|
+
// Log an error or warning indicating an unexpected field intended for the
|
|
92
|
+
// Profiling signal and process the data as if this value were absent or
|
|
93
|
+
// empty, ignoring its semantic content for the non-Profiling signal.
|
|
94
|
+
//
|
|
95
|
+
// Status: [Alpha]
|
|
96
|
+
int32 key_strindex = 3;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// InstrumentationScope is a message representing the instrumentation scope information
|
|
100
|
+
// such as the fully qualified name and version.
|
|
101
|
+
message InstrumentationScope {
|
|
102
|
+
// A name denoting the Instrumentation scope.
|
|
103
|
+
// An empty instrumentation scope name means the name is unknown.
|
|
104
|
+
string name = 1;
|
|
105
|
+
|
|
106
|
+
// Defines the version of the instrumentation scope.
|
|
107
|
+
// An empty instrumentation scope version means the version is unknown.
|
|
108
|
+
string version = 2;
|
|
109
|
+
|
|
110
|
+
// Additional attributes that describe the scope. [Optional].
|
|
111
|
+
// Attribute keys MUST be unique (it is not allowed to have more than one
|
|
112
|
+
// attribute with the same key).
|
|
113
|
+
// The behavior of software that receives duplicated keys can be unpredictable.
|
|
114
|
+
repeated KeyValue attributes = 3;
|
|
115
|
+
|
|
116
|
+
// The number of attributes that were discarded. Attributes
|
|
117
|
+
// can be discarded because their keys are too long or because there are too many
|
|
118
|
+
// attributes. If this value is 0, then no attributes were dropped.
|
|
119
|
+
uint32 dropped_attributes_count = 4;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// A reference to an Entity.
|
|
123
|
+
// Entity represents an object of interest associated with produced telemetry: e.g spans, metrics, profiles, or logs.
|
|
124
|
+
//
|
|
125
|
+
// Status: [Development]
|
|
126
|
+
message EntityRef {
|
|
127
|
+
// The Schema URL, if known. This is the identifier of the Schema that the entity data
|
|
128
|
+
// is recorded in. To learn more about Schema URL see
|
|
129
|
+
// https://opentelemetry.io/docs/specs/otel/schemas/#schema-url
|
|
130
|
+
//
|
|
131
|
+
// This schema_url applies to the data in this message and to the Resource attributes
|
|
132
|
+
// referenced by id_keys and description_keys.
|
|
133
|
+
// TODO: discuss if we are happy with this somewhat complicated definition of what
|
|
134
|
+
// the schema_url applies to.
|
|
135
|
+
//
|
|
136
|
+
// This field obsoletes the schema_url field in ResourceMetrics/ResourceSpans/ResourceLogs.
|
|
137
|
+
string schema_url = 1;
|
|
138
|
+
|
|
139
|
+
// Defines the type of the entity. MUST not change during the lifetime of the entity.
|
|
140
|
+
// For example: "service" or "host". This field is required and MUST not be empty
|
|
141
|
+
// for valid entities.
|
|
142
|
+
string type = 2;
|
|
143
|
+
|
|
144
|
+
// Attribute Keys that identify the entity.
|
|
145
|
+
// MUST not change during the lifetime of the entity. The Id must contain at least one attribute.
|
|
146
|
+
// These keys MUST exist in the containing {message}.attributes.
|
|
147
|
+
repeated string id_keys = 3;
|
|
148
|
+
|
|
149
|
+
// Descriptive (non-identifying) attribute keys of the entity.
|
|
150
|
+
// MAY change over the lifetime of the entity. MAY be empty.
|
|
151
|
+
// These attribute keys are not part of entity's identity.
|
|
152
|
+
// These keys MUST exist in the containing {message}.attributes.
|
|
153
|
+
repeated string description_keys = 4;
|
|
154
|
+
}
|