trace.go raw
1 // Copyright The OpenTelemetry Authors
2 // SPDX-License-Identifier: Apache-2.0
3
4 // Code generated from semantic convention specification. DO NOT EDIT.
5
6 package semconv // import "go.opentelemetry.io/otel/semconv/v1.20.0"
7
8 import "go.opentelemetry.io/otel/attribute"
9
10 // The shared attributes used to report a single exception associated with a
11 // span or log.
12 const (
13 // ExceptionTypeKey is the attribute Key conforming to the "exception.type"
14 // semantic conventions. It represents the type of the exception (its
15 // fully-qualified class name, if applicable). The dynamic type of the
16 // exception should be preferred over the static type in languages that
17 // support it.
18 //
19 // Type: string
20 // RequirementLevel: Optional
21 // Stability: stable
22 // Examples: 'java.net.ConnectException', 'OSError'
23 ExceptionTypeKey = attribute.Key("exception.type")
24
25 // ExceptionMessageKey is the attribute Key conforming to the
26 // "exception.message" semantic conventions. It represents the exception
27 // message.
28 //
29 // Type: string
30 // RequirementLevel: Optional
31 // Stability: stable
32 // Examples: 'Division by zero', "Can't convert 'int' object to str
33 // implicitly"
34 ExceptionMessageKey = attribute.Key("exception.message")
35
36 // ExceptionStacktraceKey is the attribute Key conforming to the
37 // "exception.stacktrace" semantic conventions. It represents a stacktrace
38 // as a string in the natural representation for the language runtime. The
39 // representation is to be determined and documented by each language SIG.
40 //
41 // Type: string
42 // RequirementLevel: Optional
43 // Stability: stable
44 // Examples: 'Exception in thread "main" java.lang.RuntimeException: Test
45 // exception\\n at '
46 // 'com.example.GenerateTrace.methodB(GenerateTrace.java:13)\\n at '
47 // 'com.example.GenerateTrace.methodA(GenerateTrace.java:9)\\n at '
48 // 'com.example.GenerateTrace.main(GenerateTrace.java:5)'
49 ExceptionStacktraceKey = attribute.Key("exception.stacktrace")
50 )
51
52 // ExceptionType returns an attribute KeyValue conforming to the
53 // "exception.type" semantic conventions. It represents the type of the
54 // exception (its fully-qualified class name, if applicable). The dynamic type
55 // of the exception should be preferred over the static type in languages that
56 // support it.
57 func ExceptionType(val string) attribute.KeyValue {
58 return ExceptionTypeKey.String(val)
59 }
60
61 // ExceptionMessage returns an attribute KeyValue conforming to the
62 // "exception.message" semantic conventions. It represents the exception
63 // message.
64 func ExceptionMessage(val string) attribute.KeyValue {
65 return ExceptionMessageKey.String(val)
66 }
67
68 // ExceptionStacktrace returns an attribute KeyValue conforming to the
69 // "exception.stacktrace" semantic conventions. It represents a stacktrace as a
70 // string in the natural representation for the language runtime. The
71 // representation is to be determined and documented by each language SIG.
72 func ExceptionStacktrace(val string) attribute.KeyValue {
73 return ExceptionStacktraceKey.String(val)
74 }
75
76 // The attributes described in this section are rather generic. They may be
77 // used in any Log Record they apply to.
78 const (
79 // LogRecordUIDKey is the attribute Key conforming to the "log.record.uid"
80 // semantic conventions. It represents a unique identifier for the Log
81 // Record.
82 //
83 // Type: string
84 // RequirementLevel: Optional
85 // Stability: stable
86 // Examples: '01ARZ3NDEKTSV4RRFFQ69G5FAV'
87 // Note: If an id is provided, other log records with the same id will be
88 // considered duplicates and can be removed safely. This means, that two
89 // distinguishable log records MUST have different values.
90 // The id MAY be an [Universally Unique Lexicographically Sortable
91 // Identifier (ULID)](https://github.com/ulid/spec), but other identifiers
92 // (e.g. UUID) may be used as needed.
93 LogRecordUIDKey = attribute.Key("log.record.uid")
94 )
95
96 // LogRecordUID returns an attribute KeyValue conforming to the
97 // "log.record.uid" semantic conventions. It represents a unique identifier for
98 // the Log Record.
99 func LogRecordUID(val string) attribute.KeyValue {
100 return LogRecordUIDKey.String(val)
101 }
102
103 // Span attributes used by AWS Lambda (in addition to general `faas`
104 // attributes).
105 const (
106 // AWSLambdaInvokedARNKey is the attribute Key conforming to the
107 // "aws.lambda.invoked_arn" semantic conventions. It represents the full
108 // invoked ARN as provided on the `Context` passed to the function
109 // (`Lambda-Runtime-Invoked-Function-ARN` header on the
110 // `/runtime/invocation/next` applicable).
111 //
112 // Type: string
113 // RequirementLevel: Optional
114 // Stability: stable
115 // Examples: 'arn:aws:lambda:us-east-1:123456:function:myfunction:myalias'
116 // Note: This may be different from `cloud.resource_id` if an alias is
117 // involved.
118 AWSLambdaInvokedARNKey = attribute.Key("aws.lambda.invoked_arn")
119 )
120
121 // AWSLambdaInvokedARN returns an attribute KeyValue conforming to the
122 // "aws.lambda.invoked_arn" semantic conventions. It represents the full
123 // invoked ARN as provided on the `Context` passed to the function
124 // (`Lambda-Runtime-Invoked-Function-ARN` header on the
125 // `/runtime/invocation/next` applicable).
126 func AWSLambdaInvokedARN(val string) attribute.KeyValue {
127 return AWSLambdaInvokedARNKey.String(val)
128 }
129
130 // Attributes for CloudEvents. CloudEvents is a specification on how to define
131 // event data in a standard way. These attributes can be attached to spans when
132 // performing operations with CloudEvents, regardless of the protocol being
133 // used.
134 const (
135 // CloudeventsEventIDKey is the attribute Key conforming to the
136 // "cloudevents.event_id" semantic conventions. It represents the
137 // [event_id](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#id)
138 // uniquely identifies the event.
139 //
140 // Type: string
141 // RequirementLevel: Required
142 // Stability: stable
143 // Examples: '123e4567-e89b-12d3-a456-426614174000', '0001'
144 CloudeventsEventIDKey = attribute.Key("cloudevents.event_id")
145
146 // CloudeventsEventSourceKey is the attribute Key conforming to the
147 // "cloudevents.event_source" semantic conventions. It represents the
148 // [source](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#source-1)
149 // identifies the context in which an event happened.
150 //
151 // Type: string
152 // RequirementLevel: Required
153 // Stability: stable
154 // Examples: 'https://github.com/cloudevents',
155 // '/cloudevents/spec/pull/123', 'my-service'
156 CloudeventsEventSourceKey = attribute.Key("cloudevents.event_source")
157
158 // CloudeventsEventSpecVersionKey is the attribute Key conforming to the
159 // "cloudevents.event_spec_version" semantic conventions. It represents the
160 // [version of the CloudEvents
161 // specification](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#specversion)
162 // which the event uses.
163 //
164 // Type: string
165 // RequirementLevel: Optional
166 // Stability: stable
167 // Examples: '1.0'
168 CloudeventsEventSpecVersionKey = attribute.Key("cloudevents.event_spec_version")
169
170 // CloudeventsEventTypeKey is the attribute Key conforming to the
171 // "cloudevents.event_type" semantic conventions. It represents the
172 // [event_type](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#type)
173 // contains a value describing the type of event related to the originating
174 // occurrence.
175 //
176 // Type: string
177 // RequirementLevel: Optional
178 // Stability: stable
179 // Examples: 'com.github.pull_request.opened',
180 // 'com.example.object.deleted.v2'
181 CloudeventsEventTypeKey = attribute.Key("cloudevents.event_type")
182
183 // CloudeventsEventSubjectKey is the attribute Key conforming to the
184 // "cloudevents.event_subject" semantic conventions. It represents the
185 // [subject](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#subject)
186 // of the event in the context of the event producer (identified by
187 // source).
188 //
189 // Type: string
190 // RequirementLevel: Optional
191 // Stability: stable
192 // Examples: 'mynewfile.jpg'
193 CloudeventsEventSubjectKey = attribute.Key("cloudevents.event_subject")
194 )
195
196 // CloudeventsEventID returns an attribute KeyValue conforming to the
197 // "cloudevents.event_id" semantic conventions. It represents the
198 // [event_id](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#id)
199 // uniquely identifies the event.
200 func CloudeventsEventID(val string) attribute.KeyValue {
201 return CloudeventsEventIDKey.String(val)
202 }
203
204 // CloudeventsEventSource returns an attribute KeyValue conforming to the
205 // "cloudevents.event_source" semantic conventions. It represents the
206 // [source](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#source-1)
207 // identifies the context in which an event happened.
208 func CloudeventsEventSource(val string) attribute.KeyValue {
209 return CloudeventsEventSourceKey.String(val)
210 }
211
212 // CloudeventsEventSpecVersion returns an attribute KeyValue conforming to
213 // the "cloudevents.event_spec_version" semantic conventions. It represents the
214 // [version of the CloudEvents
215 // specification](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#specversion)
216 // which the event uses.
217 func CloudeventsEventSpecVersion(val string) attribute.KeyValue {
218 return CloudeventsEventSpecVersionKey.String(val)
219 }
220
221 // CloudeventsEventType returns an attribute KeyValue conforming to the
222 // "cloudevents.event_type" semantic conventions. It represents the
223 // [event_type](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#type)
224 // contains a value describing the type of event related to the originating
225 // occurrence.
226 func CloudeventsEventType(val string) attribute.KeyValue {
227 return CloudeventsEventTypeKey.String(val)
228 }
229
230 // CloudeventsEventSubject returns an attribute KeyValue conforming to the
231 // "cloudevents.event_subject" semantic conventions. It represents the
232 // [subject](https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#subject)
233 // of the event in the context of the event producer (identified by source).
234 func CloudeventsEventSubject(val string) attribute.KeyValue {
235 return CloudeventsEventSubjectKey.String(val)
236 }
237
238 // Semantic conventions for the OpenTracing Shim
239 const (
240 // OpentracingRefTypeKey is the attribute Key conforming to the
241 // "opentracing.ref_type" semantic conventions. It represents the
242 // parent-child Reference type
243 //
244 // Type: Enum
245 // RequirementLevel: Optional
246 // Stability: stable
247 // Note: The causal relationship between a child Span and a parent Span.
248 OpentracingRefTypeKey = attribute.Key("opentracing.ref_type")
249 )
250
251 var (
252 // The parent Span depends on the child Span in some capacity
253 OpentracingRefTypeChildOf = OpentracingRefTypeKey.String("child_of")
254 // The parent Span does not depend in any way on the result of the child Span
255 OpentracingRefTypeFollowsFrom = OpentracingRefTypeKey.String("follows_from")
256 )
257
258 // The attributes used to perform database client calls.
259 const (
260 // DBSystemKey is the attribute Key conforming to the "db.system" semantic
261 // conventions. It represents an identifier for the database management
262 // system (DBMS) product being used. See below for a list of well-known
263 // identifiers.
264 //
265 // Type: Enum
266 // RequirementLevel: Required
267 // Stability: stable
268 DBSystemKey = attribute.Key("db.system")
269
270 // DBConnectionStringKey is the attribute Key conforming to the
271 // "db.connection_string" semantic conventions. It represents the
272 // connection string used to connect to the database. It is recommended to
273 // remove embedded credentials.
274 //
275 // Type: string
276 // RequirementLevel: Optional
277 // Stability: stable
278 // Examples: 'Server=(localdb)\\v11.0;Integrated Security=true;'
279 DBConnectionStringKey = attribute.Key("db.connection_string")
280
281 // DBUserKey is the attribute Key conforming to the "db.user" semantic
282 // conventions. It represents the username for accessing the database.
283 //
284 // Type: string
285 // RequirementLevel: Optional
286 // Stability: stable
287 // Examples: 'readonly_user', 'reporting_user'
288 DBUserKey = attribute.Key("db.user")
289
290 // DBJDBCDriverClassnameKey is the attribute Key conforming to the
291 // "db.jdbc.driver_classname" semantic conventions. It represents the
292 // fully-qualified class name of the [Java Database Connectivity
293 // (JDBC)](https://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/)
294 // driver used to connect.
295 //
296 // Type: string
297 // RequirementLevel: Optional
298 // Stability: stable
299 // Examples: 'org.postgresql.Driver',
300 // 'com.microsoft.sqlserver.jdbc.SQLServerDriver'
301 DBJDBCDriverClassnameKey = attribute.Key("db.jdbc.driver_classname")
302
303 // DBNameKey is the attribute Key conforming to the "db.name" semantic
304 // conventions. It represents the this attribute is used to report the name
305 // of the database being accessed. For commands that switch the database,
306 // this should be set to the target database (even if the command fails).
307 //
308 // Type: string
309 // RequirementLevel: ConditionallyRequired (If applicable.)
310 // Stability: stable
311 // Examples: 'customers', 'main'
312 // Note: In some SQL databases, the database name to be used is called
313 // "schema name". In case there are multiple layers that could be
314 // considered for database name (e.g. Oracle instance name and schema
315 // name), the database name to be used is the more specific layer (e.g.
316 // Oracle schema name).
317 DBNameKey = attribute.Key("db.name")
318
319 // DBStatementKey is the attribute Key conforming to the "db.statement"
320 // semantic conventions. It represents the database statement being
321 // executed.
322 //
323 // Type: string
324 // RequirementLevel: Recommended (Should be collected by default only if
325 // there is sanitization that excludes sensitive information.)
326 // Stability: stable
327 // Examples: 'SELECT * FROM wuser_table', 'SET mykey "WuValue"'
328 DBStatementKey = attribute.Key("db.statement")
329
330 // DBOperationKey is the attribute Key conforming to the "db.operation"
331 // semantic conventions. It represents the name of the operation being
332 // executed, e.g. the [MongoDB command
333 // name](https://docs.mongodb.com/manual/reference/command/#database-operations)
334 // such as `findAndModify`, or the SQL keyword.
335 //
336 // Type: string
337 // RequirementLevel: ConditionallyRequired (If `db.statement` is not
338 // applicable.)
339 // Stability: stable
340 // Examples: 'findAndModify', 'HMSET', 'SELECT'
341 // Note: When setting this to an SQL keyword, it is not recommended to
342 // attempt any client-side parsing of `db.statement` just to get this
343 // property, but it should be set if the operation name is provided by the
344 // library being instrumented. If the SQL statement has an ambiguous
345 // operation, or performs more than one operation, this value may be
346 // omitted.
347 DBOperationKey = attribute.Key("db.operation")
348 )
349
350 var (
351 // Some other SQL database. Fallback only. See notes
352 DBSystemOtherSQL = DBSystemKey.String("other_sql")
353 // Microsoft SQL Server
354 DBSystemMSSQL = DBSystemKey.String("mssql")
355 // Microsoft SQL Server Compact
356 DBSystemMssqlcompact = DBSystemKey.String("mssqlcompact")
357 // MySQL
358 DBSystemMySQL = DBSystemKey.String("mysql")
359 // Oracle Database
360 DBSystemOracle = DBSystemKey.String("oracle")
361 // IBM DB2
362 DBSystemDB2 = DBSystemKey.String("db2")
363 // PostgreSQL
364 DBSystemPostgreSQL = DBSystemKey.String("postgresql")
365 // Amazon Redshift
366 DBSystemRedshift = DBSystemKey.String("redshift")
367 // Apache Hive
368 DBSystemHive = DBSystemKey.String("hive")
369 // Cloudscape
370 DBSystemCloudscape = DBSystemKey.String("cloudscape")
371 // HyperSQL DataBase
372 DBSystemHSQLDB = DBSystemKey.String("hsqldb")
373 // Progress Database
374 DBSystemProgress = DBSystemKey.String("progress")
375 // SAP MaxDB
376 DBSystemMaxDB = DBSystemKey.String("maxdb")
377 // SAP HANA
378 DBSystemHanaDB = DBSystemKey.String("hanadb")
379 // Ingres
380 DBSystemIngres = DBSystemKey.String("ingres")
381 // FirstSQL
382 DBSystemFirstSQL = DBSystemKey.String("firstsql")
383 // EnterpriseDB
384 DBSystemEDB = DBSystemKey.String("edb")
385 // InterSystems Caché
386 DBSystemCache = DBSystemKey.String("cache")
387 // Adabas (Adaptable Database System)
388 DBSystemAdabas = DBSystemKey.String("adabas")
389 // Firebird
390 DBSystemFirebird = DBSystemKey.String("firebird")
391 // Apache Derby
392 DBSystemDerby = DBSystemKey.String("derby")
393 // FileMaker
394 DBSystemFilemaker = DBSystemKey.String("filemaker")
395 // Informix
396 DBSystemInformix = DBSystemKey.String("informix")
397 // InstantDB
398 DBSystemInstantDB = DBSystemKey.String("instantdb")
399 // InterBase
400 DBSystemInterbase = DBSystemKey.String("interbase")
401 // MariaDB
402 DBSystemMariaDB = DBSystemKey.String("mariadb")
403 // Netezza
404 DBSystemNetezza = DBSystemKey.String("netezza")
405 // Pervasive PSQL
406 DBSystemPervasive = DBSystemKey.String("pervasive")
407 // PointBase
408 DBSystemPointbase = DBSystemKey.String("pointbase")
409 // SQLite
410 DBSystemSqlite = DBSystemKey.String("sqlite")
411 // Sybase
412 DBSystemSybase = DBSystemKey.String("sybase")
413 // Teradata
414 DBSystemTeradata = DBSystemKey.String("teradata")
415 // Vertica
416 DBSystemVertica = DBSystemKey.String("vertica")
417 // H2
418 DBSystemH2 = DBSystemKey.String("h2")
419 // ColdFusion IMQ
420 DBSystemColdfusion = DBSystemKey.String("coldfusion")
421 // Apache Cassandra
422 DBSystemCassandra = DBSystemKey.String("cassandra")
423 // Apache HBase
424 DBSystemHBase = DBSystemKey.String("hbase")
425 // MongoDB
426 DBSystemMongoDB = DBSystemKey.String("mongodb")
427 // Redis
428 DBSystemRedis = DBSystemKey.String("redis")
429 // Couchbase
430 DBSystemCouchbase = DBSystemKey.String("couchbase")
431 // CouchDB
432 DBSystemCouchDB = DBSystemKey.String("couchdb")
433 // Microsoft Azure Cosmos DB
434 DBSystemCosmosDB = DBSystemKey.String("cosmosdb")
435 // Amazon DynamoDB
436 DBSystemDynamoDB = DBSystemKey.String("dynamodb")
437 // Neo4j
438 DBSystemNeo4j = DBSystemKey.String("neo4j")
439 // Apache Geode
440 DBSystemGeode = DBSystemKey.String("geode")
441 // Elasticsearch
442 DBSystemElasticsearch = DBSystemKey.String("elasticsearch")
443 // Memcached
444 DBSystemMemcached = DBSystemKey.String("memcached")
445 // CockroachDB
446 DBSystemCockroachdb = DBSystemKey.String("cockroachdb")
447 // OpenSearch
448 DBSystemOpensearch = DBSystemKey.String("opensearch")
449 // ClickHouse
450 DBSystemClickhouse = DBSystemKey.String("clickhouse")
451 // Cloud Spanner
452 DBSystemSpanner = DBSystemKey.String("spanner")
453 // Trino
454 DBSystemTrino = DBSystemKey.String("trino")
455 )
456
457 // DBConnectionString returns an attribute KeyValue conforming to the
458 // "db.connection_string" semantic conventions. It represents the connection
459 // string used to connect to the database. It is recommended to remove embedded
460 // credentials.
461 func DBConnectionString(val string) attribute.KeyValue {
462 return DBConnectionStringKey.String(val)
463 }
464
465 // DBUser returns an attribute KeyValue conforming to the "db.user" semantic
466 // conventions. It represents the username for accessing the database.
467 func DBUser(val string) attribute.KeyValue {
468 return DBUserKey.String(val)
469 }
470
471 // DBJDBCDriverClassname returns an attribute KeyValue conforming to the
472 // "db.jdbc.driver_classname" semantic conventions. It represents the
473 // fully-qualified class name of the [Java Database Connectivity
474 // (JDBC)](https://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/) driver
475 // used to connect.
476 func DBJDBCDriverClassname(val string) attribute.KeyValue {
477 return DBJDBCDriverClassnameKey.String(val)
478 }
479
480 // DBName returns an attribute KeyValue conforming to the "db.name" semantic
481 // conventions. It represents the this attribute is used to report the name of
482 // the database being accessed. For commands that switch the database, this
483 // should be set to the target database (even if the command fails).
484 func DBName(val string) attribute.KeyValue {
485 return DBNameKey.String(val)
486 }
487
488 // DBStatement returns an attribute KeyValue conforming to the
489 // "db.statement" semantic conventions. It represents the database statement
490 // being executed.
491 func DBStatement(val string) attribute.KeyValue {
492 return DBStatementKey.String(val)
493 }
494
495 // DBOperation returns an attribute KeyValue conforming to the
496 // "db.operation" semantic conventions. It represents the name of the operation
497 // being executed, e.g. the [MongoDB command
498 // name](https://docs.mongodb.com/manual/reference/command/#database-operations)
499 // such as `findAndModify`, or the SQL keyword.
500 func DBOperation(val string) attribute.KeyValue {
501 return DBOperationKey.String(val)
502 }
503
504 // Connection-level attributes for Microsoft SQL Server
505 const (
506 // DBMSSQLInstanceNameKey is the attribute Key conforming to the
507 // "db.mssql.instance_name" semantic conventions. It represents the
508 // Microsoft SQL Server [instance
509 // name](https://docs.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=sql-server-ver15)
510 // connecting to. This name is used to determine the port of a named
511 // instance.
512 //
513 // Type: string
514 // RequirementLevel: Optional
515 // Stability: stable
516 // Examples: 'MSSQLSERVER'
517 // Note: If setting a `db.mssql.instance_name`, `net.peer.port` is no
518 // longer required (but still recommended if non-standard).
519 DBMSSQLInstanceNameKey = attribute.Key("db.mssql.instance_name")
520 )
521
522 // DBMSSQLInstanceName returns an attribute KeyValue conforming to the
523 // "db.mssql.instance_name" semantic conventions. It represents the Microsoft
524 // SQL Server [instance
525 // name](https://docs.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=sql-server-ver15)
526 // connecting to. This name is used to determine the port of a named instance.
527 func DBMSSQLInstanceName(val string) attribute.KeyValue {
528 return DBMSSQLInstanceNameKey.String(val)
529 }
530
531 // Call-level attributes for Cassandra
532 const (
533 // DBCassandraPageSizeKey is the attribute Key conforming to the
534 // "db.cassandra.page_size" semantic conventions. It represents the fetch
535 // size used for paging, i.e. how many rows will be returned at once.
536 //
537 // Type: int
538 // RequirementLevel: Optional
539 // Stability: stable
540 // Examples: 5000
541 DBCassandraPageSizeKey = attribute.Key("db.cassandra.page_size")
542
543 // DBCassandraConsistencyLevelKey is the attribute Key conforming to the
544 // "db.cassandra.consistency_level" semantic conventions. It represents the
545 // consistency level of the query. Based on consistency values from
546 // [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html).
547 //
548 // Type: Enum
549 // RequirementLevel: Optional
550 // Stability: stable
551 DBCassandraConsistencyLevelKey = attribute.Key("db.cassandra.consistency_level")
552
553 // DBCassandraTableKey is the attribute Key conforming to the
554 // "db.cassandra.table" semantic conventions. It represents the name of the
555 // primary table that the operation is acting upon, including the keyspace
556 // name (if applicable).
557 //
558 // Type: string
559 // RequirementLevel: Recommended
560 // Stability: stable
561 // Examples: 'mytable'
562 // Note: This mirrors the db.sql.table attribute but references cassandra
563 // rather than sql. It is not recommended to attempt any client-side
564 // parsing of `db.statement` just to get this property, but it should be
565 // set if it is provided by the library being instrumented. If the
566 // operation is acting upon an anonymous table, or more than one table,
567 // this value MUST NOT be set.
568 DBCassandraTableKey = attribute.Key("db.cassandra.table")
569
570 // DBCassandraIdempotenceKey is the attribute Key conforming to the
571 // "db.cassandra.idempotence" semantic conventions. It represents the
572 // whether or not the query is idempotent.
573 //
574 // Type: boolean
575 // RequirementLevel: Optional
576 // Stability: stable
577 DBCassandraIdempotenceKey = attribute.Key("db.cassandra.idempotence")
578
579 // DBCassandraSpeculativeExecutionCountKey is the attribute Key conforming
580 // to the "db.cassandra.speculative_execution_count" semantic conventions.
581 // It represents the number of times a query was speculatively executed.
582 // Not set or `0` if the query was not executed speculatively.
583 //
584 // Type: int
585 // RequirementLevel: Optional
586 // Stability: stable
587 // Examples: 0, 2
588 DBCassandraSpeculativeExecutionCountKey = attribute.Key("db.cassandra.speculative_execution_count")
589
590 // DBCassandraCoordinatorIDKey is the attribute Key conforming to the
591 // "db.cassandra.coordinator.id" semantic conventions. It represents the ID
592 // of the coordinating node for a query.
593 //
594 // Type: string
595 // RequirementLevel: Optional
596 // Stability: stable
597 // Examples: 'be13faa2-8574-4d71-926d-27f16cf8a7af'
598 DBCassandraCoordinatorIDKey = attribute.Key("db.cassandra.coordinator.id")
599
600 // DBCassandraCoordinatorDCKey is the attribute Key conforming to the
601 // "db.cassandra.coordinator.dc" semantic conventions. It represents the
602 // data center of the coordinating node for a query.
603 //
604 // Type: string
605 // RequirementLevel: Optional
606 // Stability: stable
607 // Examples: 'us-west-2'
608 DBCassandraCoordinatorDCKey = attribute.Key("db.cassandra.coordinator.dc")
609 )
610
611 var (
612 // all
613 DBCassandraConsistencyLevelAll = DBCassandraConsistencyLevelKey.String("all")
614 // each_quorum
615 DBCassandraConsistencyLevelEachQuorum = DBCassandraConsistencyLevelKey.String("each_quorum")
616 // quorum
617 DBCassandraConsistencyLevelQuorum = DBCassandraConsistencyLevelKey.String("quorum")
618 // local_quorum
619 DBCassandraConsistencyLevelLocalQuorum = DBCassandraConsistencyLevelKey.String("local_quorum")
620 // one
621 DBCassandraConsistencyLevelOne = DBCassandraConsistencyLevelKey.String("one")
622 // two
623 DBCassandraConsistencyLevelTwo = DBCassandraConsistencyLevelKey.String("two")
624 // three
625 DBCassandraConsistencyLevelThree = DBCassandraConsistencyLevelKey.String("three")
626 // local_one
627 DBCassandraConsistencyLevelLocalOne = DBCassandraConsistencyLevelKey.String("local_one")
628 // any
629 DBCassandraConsistencyLevelAny = DBCassandraConsistencyLevelKey.String("any")
630 // serial
631 DBCassandraConsistencyLevelSerial = DBCassandraConsistencyLevelKey.String("serial")
632 // local_serial
633 DBCassandraConsistencyLevelLocalSerial = DBCassandraConsistencyLevelKey.String("local_serial")
634 )
635
636 // DBCassandraPageSize returns an attribute KeyValue conforming to the
637 // "db.cassandra.page_size" semantic conventions. It represents the fetch size
638 // used for paging, i.e. how many rows will be returned at once.
639 func DBCassandraPageSize(val int) attribute.KeyValue {
640 return DBCassandraPageSizeKey.Int(val)
641 }
642
643 // DBCassandraTable returns an attribute KeyValue conforming to the
644 // "db.cassandra.table" semantic conventions. It represents the name of the
645 // primary table that the operation is acting upon, including the keyspace name
646 // (if applicable).
647 func DBCassandraTable(val string) attribute.KeyValue {
648 return DBCassandraTableKey.String(val)
649 }
650
651 // DBCassandraIdempotence returns an attribute KeyValue conforming to the
652 // "db.cassandra.idempotence" semantic conventions. It represents the whether
653 // or not the query is idempotent.
654 func DBCassandraIdempotence(val bool) attribute.KeyValue {
655 return DBCassandraIdempotenceKey.Bool(val)
656 }
657
658 // DBCassandraSpeculativeExecutionCount returns an attribute KeyValue
659 // conforming to the "db.cassandra.speculative_execution_count" semantic
660 // conventions. It represents the number of times a query was speculatively
661 // executed. Not set or `0` if the query was not executed speculatively.
662 func DBCassandraSpeculativeExecutionCount(val int) attribute.KeyValue {
663 return DBCassandraSpeculativeExecutionCountKey.Int(val)
664 }
665
666 // DBCassandraCoordinatorID returns an attribute KeyValue conforming to the
667 // "db.cassandra.coordinator.id" semantic conventions. It represents the ID of
668 // the coordinating node for a query.
669 func DBCassandraCoordinatorID(val string) attribute.KeyValue {
670 return DBCassandraCoordinatorIDKey.String(val)
671 }
672
673 // DBCassandraCoordinatorDC returns an attribute KeyValue conforming to the
674 // "db.cassandra.coordinator.dc" semantic conventions. It represents the data
675 // center of the coordinating node for a query.
676 func DBCassandraCoordinatorDC(val string) attribute.KeyValue {
677 return DBCassandraCoordinatorDCKey.String(val)
678 }
679
680 // Call-level attributes for Redis
681 const (
682 // DBRedisDBIndexKey is the attribute Key conforming to the
683 // "db.redis.database_index" semantic conventions. It represents the index
684 // of the database being accessed as used in the [`SELECT`
685 // command](https://redis.io/commands/select), provided as an integer. To
686 // be used instead of the generic `db.name` attribute.
687 //
688 // Type: int
689 // RequirementLevel: ConditionallyRequired (If other than the default
690 // database (`0`).)
691 // Stability: stable
692 // Examples: 0, 1, 15
693 DBRedisDBIndexKey = attribute.Key("db.redis.database_index")
694 )
695
696 // DBRedisDBIndex returns an attribute KeyValue conforming to the
697 // "db.redis.database_index" semantic conventions. It represents the index of
698 // the database being accessed as used in the [`SELECT`
699 // command](https://redis.io/commands/select), provided as an integer. To be
700 // used instead of the generic `db.name` attribute.
701 func DBRedisDBIndex(val int) attribute.KeyValue {
702 return DBRedisDBIndexKey.Int(val)
703 }
704
705 // Call-level attributes for MongoDB
706 const (
707 // DBMongoDBCollectionKey is the attribute Key conforming to the
708 // "db.mongodb.collection" semantic conventions. It represents the
709 // collection being accessed within the database stated in `db.name`.
710 //
711 // Type: string
712 // RequirementLevel: Required
713 // Stability: stable
714 // Examples: 'customers', 'products'
715 DBMongoDBCollectionKey = attribute.Key("db.mongodb.collection")
716 )
717
718 // DBMongoDBCollection returns an attribute KeyValue conforming to the
719 // "db.mongodb.collection" semantic conventions. It represents the collection
720 // being accessed within the database stated in `db.name`.
721 func DBMongoDBCollection(val string) attribute.KeyValue {
722 return DBMongoDBCollectionKey.String(val)
723 }
724
725 // Call-level attributes for SQL databases
726 const (
727 // DBSQLTableKey is the attribute Key conforming to the "db.sql.table"
728 // semantic conventions. It represents the name of the primary table that
729 // the operation is acting upon, including the database name (if
730 // applicable).
731 //
732 // Type: string
733 // RequirementLevel: Recommended
734 // Stability: stable
735 // Examples: 'public.users', 'customers'
736 // Note: It is not recommended to attempt any client-side parsing of
737 // `db.statement` just to get this property, but it should be set if it is
738 // provided by the library being instrumented. If the operation is acting
739 // upon an anonymous table, or more than one table, this value MUST NOT be
740 // set.
741 DBSQLTableKey = attribute.Key("db.sql.table")
742 )
743
744 // DBSQLTable returns an attribute KeyValue conforming to the "db.sql.table"
745 // semantic conventions. It represents the name of the primary table that the
746 // operation is acting upon, including the database name (if applicable).
747 func DBSQLTable(val string) attribute.KeyValue {
748 return DBSQLTableKey.String(val)
749 }
750
751 // Call-level attributes for Cosmos DB.
752 const (
753 // DBCosmosDBClientIDKey is the attribute Key conforming to the
754 // "db.cosmosdb.client_id" semantic conventions. It represents the unique
755 // Cosmos client instance id.
756 //
757 // Type: string
758 // RequirementLevel: Optional
759 // Stability: stable
760 // Examples: '3ba4827d-4422-483f-b59f-85b74211c11d'
761 DBCosmosDBClientIDKey = attribute.Key("db.cosmosdb.client_id")
762
763 // DBCosmosDBOperationTypeKey is the attribute Key conforming to the
764 // "db.cosmosdb.operation_type" semantic conventions. It represents the
765 // cosmosDB Operation Type.
766 //
767 // Type: Enum
768 // RequirementLevel: ConditionallyRequired (when performing one of the
769 // operations in this list)
770 // Stability: stable
771 DBCosmosDBOperationTypeKey = attribute.Key("db.cosmosdb.operation_type")
772
773 // DBCosmosDBConnectionModeKey is the attribute Key conforming to the
774 // "db.cosmosdb.connection_mode" semantic conventions. It represents the
775 // cosmos client connection mode.
776 //
777 // Type: Enum
778 // RequirementLevel: ConditionallyRequired (if not `direct` (or pick gw as
779 // default))
780 // Stability: stable
781 DBCosmosDBConnectionModeKey = attribute.Key("db.cosmosdb.connection_mode")
782
783 // DBCosmosDBContainerKey is the attribute Key conforming to the
784 // "db.cosmosdb.container" semantic conventions. It represents the cosmos
785 // DB container name.
786 //
787 // Type: string
788 // RequirementLevel: ConditionallyRequired (if available)
789 // Stability: stable
790 // Examples: 'anystring'
791 DBCosmosDBContainerKey = attribute.Key("db.cosmosdb.container")
792
793 // DBCosmosDBRequestContentLengthKey is the attribute Key conforming to the
794 // "db.cosmosdb.request_content_length" semantic conventions. It represents
795 // the request payload size in bytes
796 //
797 // Type: int
798 // RequirementLevel: Optional
799 // Stability: stable
800 DBCosmosDBRequestContentLengthKey = attribute.Key("db.cosmosdb.request_content_length")
801
802 // DBCosmosDBStatusCodeKey is the attribute Key conforming to the
803 // "db.cosmosdb.status_code" semantic conventions. It represents the cosmos
804 // DB status code.
805 //
806 // Type: int
807 // RequirementLevel: ConditionallyRequired (if response was received)
808 // Stability: stable
809 // Examples: 200, 201
810 DBCosmosDBStatusCodeKey = attribute.Key("db.cosmosdb.status_code")
811
812 // DBCosmosDBSubStatusCodeKey is the attribute Key conforming to the
813 // "db.cosmosdb.sub_status_code" semantic conventions. It represents the
814 // cosmos DB sub status code.
815 //
816 // Type: int
817 // RequirementLevel: ConditionallyRequired (when response was received and
818 // contained sub-code.)
819 // Stability: stable
820 // Examples: 1000, 1002
821 DBCosmosDBSubStatusCodeKey = attribute.Key("db.cosmosdb.sub_status_code")
822
823 // DBCosmosDBRequestChargeKey is the attribute Key conforming to the
824 // "db.cosmosdb.request_charge" semantic conventions. It represents the rU
825 // consumed for that operation
826 //
827 // Type: double
828 // RequirementLevel: ConditionallyRequired (when available)
829 // Stability: stable
830 // Examples: 46.18, 1.0
831 DBCosmosDBRequestChargeKey = attribute.Key("db.cosmosdb.request_charge")
832 )
833
834 var (
835 // invalid
836 DBCosmosDBOperationTypeInvalid = DBCosmosDBOperationTypeKey.String("Invalid")
837 // create
838 DBCosmosDBOperationTypeCreate = DBCosmosDBOperationTypeKey.String("Create")
839 // patch
840 DBCosmosDBOperationTypePatch = DBCosmosDBOperationTypeKey.String("Patch")
841 // read
842 DBCosmosDBOperationTypeRead = DBCosmosDBOperationTypeKey.String("Read")
843 // read_feed
844 DBCosmosDBOperationTypeReadFeed = DBCosmosDBOperationTypeKey.String("ReadFeed")
845 // delete
846 DBCosmosDBOperationTypeDelete = DBCosmosDBOperationTypeKey.String("Delete")
847 // replace
848 DBCosmosDBOperationTypeReplace = DBCosmosDBOperationTypeKey.String("Replace")
849 // execute
850 DBCosmosDBOperationTypeExecute = DBCosmosDBOperationTypeKey.String("Execute")
851 // query
852 DBCosmosDBOperationTypeQuery = DBCosmosDBOperationTypeKey.String("Query")
853 // head
854 DBCosmosDBOperationTypeHead = DBCosmosDBOperationTypeKey.String("Head")
855 // head_feed
856 DBCosmosDBOperationTypeHeadFeed = DBCosmosDBOperationTypeKey.String("HeadFeed")
857 // upsert
858 DBCosmosDBOperationTypeUpsert = DBCosmosDBOperationTypeKey.String("Upsert")
859 // batch
860 DBCosmosDBOperationTypeBatch = DBCosmosDBOperationTypeKey.String("Batch")
861 // query_plan
862 DBCosmosDBOperationTypeQueryPlan = DBCosmosDBOperationTypeKey.String("QueryPlan")
863 // execute_javascript
864 DBCosmosDBOperationTypeExecuteJavascript = DBCosmosDBOperationTypeKey.String("ExecuteJavaScript")
865 )
866
867 var (
868 // Gateway (HTTP) connections mode
869 DBCosmosDBConnectionModeGateway = DBCosmosDBConnectionModeKey.String("gateway")
870 // Direct connection
871 DBCosmosDBConnectionModeDirect = DBCosmosDBConnectionModeKey.String("direct")
872 )
873
874 // DBCosmosDBClientID returns an attribute KeyValue conforming to the
875 // "db.cosmosdb.client_id" semantic conventions. It represents the unique
876 // Cosmos client instance id.
877 func DBCosmosDBClientID(val string) attribute.KeyValue {
878 return DBCosmosDBClientIDKey.String(val)
879 }
880
881 // DBCosmosDBContainer returns an attribute KeyValue conforming to the
882 // "db.cosmosdb.container" semantic conventions. It represents the cosmos DB
883 // container name.
884 func DBCosmosDBContainer(val string) attribute.KeyValue {
885 return DBCosmosDBContainerKey.String(val)
886 }
887
888 // DBCosmosDBRequestContentLength returns an attribute KeyValue conforming
889 // to the "db.cosmosdb.request_content_length" semantic conventions. It
890 // represents the request payload size in bytes
891 func DBCosmosDBRequestContentLength(val int) attribute.KeyValue {
892 return DBCosmosDBRequestContentLengthKey.Int(val)
893 }
894
895 // DBCosmosDBStatusCode returns an attribute KeyValue conforming to the
896 // "db.cosmosdb.status_code" semantic conventions. It represents the cosmos DB
897 // status code.
898 func DBCosmosDBStatusCode(val int) attribute.KeyValue {
899 return DBCosmosDBStatusCodeKey.Int(val)
900 }
901
902 // DBCosmosDBSubStatusCode returns an attribute KeyValue conforming to the
903 // "db.cosmosdb.sub_status_code" semantic conventions. It represents the cosmos
904 // DB sub status code.
905 func DBCosmosDBSubStatusCode(val int) attribute.KeyValue {
906 return DBCosmosDBSubStatusCodeKey.Int(val)
907 }
908
909 // DBCosmosDBRequestCharge returns an attribute KeyValue conforming to the
910 // "db.cosmosdb.request_charge" semantic conventions. It represents the rU
911 // consumed for that operation
912 func DBCosmosDBRequestCharge(val float64) attribute.KeyValue {
913 return DBCosmosDBRequestChargeKey.Float64(val)
914 }
915
916 // Span attributes used by non-OTLP exporters to represent OpenTelemetry Span's
917 // concepts.
918 const (
919 // OTelStatusCodeKey is the attribute Key conforming to the
920 // "otel.status_code" semantic conventions. It represents the name of the
921 // code, either "OK" or "ERROR". MUST NOT be set if the status code is
922 // UNSET.
923 //
924 // Type: Enum
925 // RequirementLevel: Optional
926 // Stability: stable
927 OTelStatusCodeKey = attribute.Key("otel.status_code")
928
929 // OTelStatusDescriptionKey is the attribute Key conforming to the
930 // "otel.status_description" semantic conventions. It represents the
931 // description of the Status if it has a value, otherwise not set.
932 //
933 // Type: string
934 // RequirementLevel: Optional
935 // Stability: stable
936 // Examples: 'resource not found'
937 OTelStatusDescriptionKey = attribute.Key("otel.status_description")
938 )
939
940 var (
941 // The operation has been validated by an Application developer or Operator to have completed successfully
942 OTelStatusCodeOk = OTelStatusCodeKey.String("OK")
943 // The operation contains an error
944 OTelStatusCodeError = OTelStatusCodeKey.String("ERROR")
945 )
946
947 // OTelStatusDescription returns an attribute KeyValue conforming to the
948 // "otel.status_description" semantic conventions. It represents the
949 // description of the Status if it has a value, otherwise not set.
950 func OTelStatusDescription(val string) attribute.KeyValue {
951 return OTelStatusDescriptionKey.String(val)
952 }
953
954 // This semantic convention describes an instance of a function that runs
955 // without provisioning or managing of servers (also known as serverless
956 // functions or Function as a Service (FaaS)) with spans.
957 const (
958 // FaaSTriggerKey is the attribute Key conforming to the "faas.trigger"
959 // semantic conventions. It represents the type of the trigger which caused
960 // this function invocation.
961 //
962 // Type: Enum
963 // RequirementLevel: Optional
964 // Stability: stable
965 // Note: For the server/consumer span on the incoming side,
966 // `faas.trigger` MUST be set.
967 //
968 // Clients invoking FaaS instances usually cannot set `faas.trigger`,
969 // since they would typically need to look in the payload to determine
970 // the event type. If clients set it, it should be the same as the
971 // trigger that corresponding incoming would have (i.e., this has
972 // nothing to do with the underlying transport used to make the API
973 // call to invoke the lambda, which is often HTTP).
974 FaaSTriggerKey = attribute.Key("faas.trigger")
975
976 // FaaSInvocationIDKey is the attribute Key conforming to the
977 // "faas.invocation_id" semantic conventions. It represents the invocation
978 // ID of the current function invocation.
979 //
980 // Type: string
981 // RequirementLevel: Optional
982 // Stability: stable
983 // Examples: 'af9d5aa4-a685-4c5f-a22b-444f80b3cc28'
984 FaaSInvocationIDKey = attribute.Key("faas.invocation_id")
985 )
986
987 var (
988 // A response to some data source operation such as a database or filesystem read/write
989 FaaSTriggerDatasource = FaaSTriggerKey.String("datasource")
990 // To provide an answer to an inbound HTTP request
991 FaaSTriggerHTTP = FaaSTriggerKey.String("http")
992 // A function is set to be executed when messages are sent to a messaging system
993 FaaSTriggerPubsub = FaaSTriggerKey.String("pubsub")
994 // A function is scheduled to be executed regularly
995 FaaSTriggerTimer = FaaSTriggerKey.String("timer")
996 // If none of the others apply
997 FaaSTriggerOther = FaaSTriggerKey.String("other")
998 )
999
1000 // FaaSInvocationID returns an attribute KeyValue conforming to the
1001 // "faas.invocation_id" semantic conventions. It represents the invocation ID
1002 // of the current function invocation.
1003 func FaaSInvocationID(val string) attribute.KeyValue {
1004 return FaaSInvocationIDKey.String(val)
1005 }
1006
1007 // Semantic Convention for FaaS triggered as a response to some data source
1008 // operation such as a database or filesystem read/write.
1009 const (
1010 // FaaSDocumentCollectionKey is the attribute Key conforming to the
1011 // "faas.document.collection" semantic conventions. It represents the name
1012 // of the source on which the triggering operation was performed. For
1013 // example, in Cloud Storage or S3 corresponds to the bucket name, and in
1014 // Cosmos DB to the database name.
1015 //
1016 // Type: string
1017 // RequirementLevel: Required
1018 // Stability: stable
1019 // Examples: 'myBucketName', 'myDBName'
1020 FaaSDocumentCollectionKey = attribute.Key("faas.document.collection")
1021
1022 // FaaSDocumentOperationKey is the attribute Key conforming to the
1023 // "faas.document.operation" semantic conventions. It represents the
1024 // describes the type of the operation that was performed on the data.
1025 //
1026 // Type: Enum
1027 // RequirementLevel: Required
1028 // Stability: stable
1029 FaaSDocumentOperationKey = attribute.Key("faas.document.operation")
1030
1031 // FaaSDocumentTimeKey is the attribute Key conforming to the
1032 // "faas.document.time" semantic conventions. It represents a string
1033 // containing the time when the data was accessed in the [ISO
1034 // 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format
1035 // expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
1036 //
1037 // Type: string
1038 // RequirementLevel: Optional
1039 // Stability: stable
1040 // Examples: '2020-01-23T13:47:06Z'
1041 FaaSDocumentTimeKey = attribute.Key("faas.document.time")
1042
1043 // FaaSDocumentNameKey is the attribute Key conforming to the
1044 // "faas.document.name" semantic conventions. It represents the document
1045 // name/table subjected to the operation. For example, in Cloud Storage or
1046 // S3 is the name of the file, and in Cosmos DB the table name.
1047 //
1048 // Type: string
1049 // RequirementLevel: Optional
1050 // Stability: stable
1051 // Examples: 'myFile.txt', 'myTableName'
1052 FaaSDocumentNameKey = attribute.Key("faas.document.name")
1053 )
1054
1055 var (
1056 // When a new object is created
1057 FaaSDocumentOperationInsert = FaaSDocumentOperationKey.String("insert")
1058 // When an object is modified
1059 FaaSDocumentOperationEdit = FaaSDocumentOperationKey.String("edit")
1060 // When an object is deleted
1061 FaaSDocumentOperationDelete = FaaSDocumentOperationKey.String("delete")
1062 )
1063
1064 // FaaSDocumentCollection returns an attribute KeyValue conforming to the
1065 // "faas.document.collection" semantic conventions. It represents the name of
1066 // the source on which the triggering operation was performed. For example, in
1067 // Cloud Storage or S3 corresponds to the bucket name, and in Cosmos DB to the
1068 // database name.
1069 func FaaSDocumentCollection(val string) attribute.KeyValue {
1070 return FaaSDocumentCollectionKey.String(val)
1071 }
1072
1073 // FaaSDocumentTime returns an attribute KeyValue conforming to the
1074 // "faas.document.time" semantic conventions. It represents a string containing
1075 // the time when the data was accessed in the [ISO
1076 // 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format
1077 // expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
1078 func FaaSDocumentTime(val string) attribute.KeyValue {
1079 return FaaSDocumentTimeKey.String(val)
1080 }
1081
1082 // FaaSDocumentName returns an attribute KeyValue conforming to the
1083 // "faas.document.name" semantic conventions. It represents the document
1084 // name/table subjected to the operation. For example, in Cloud Storage or S3
1085 // is the name of the file, and in Cosmos DB the table name.
1086 func FaaSDocumentName(val string) attribute.KeyValue {
1087 return FaaSDocumentNameKey.String(val)
1088 }
1089
1090 // Semantic Convention for FaaS scheduled to be executed regularly.
1091 const (
1092 // FaaSTimeKey is the attribute Key conforming to the "faas.time" semantic
1093 // conventions. It represents a string containing the function invocation
1094 // time in the [ISO
1095 // 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format
1096 // expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
1097 //
1098 // Type: string
1099 // RequirementLevel: Optional
1100 // Stability: stable
1101 // Examples: '2020-01-23T13:47:06Z'
1102 FaaSTimeKey = attribute.Key("faas.time")
1103
1104 // FaaSCronKey is the attribute Key conforming to the "faas.cron" semantic
1105 // conventions. It represents a string containing the schedule period as
1106 // [Cron
1107 // Expression](https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm).
1108 //
1109 // Type: string
1110 // RequirementLevel: Optional
1111 // Stability: stable
1112 // Examples: '0/5 * * * ? *'
1113 FaaSCronKey = attribute.Key("faas.cron")
1114 )
1115
1116 // FaaSTime returns an attribute KeyValue conforming to the "faas.time"
1117 // semantic conventions. It represents a string containing the function
1118 // invocation time in the [ISO
1119 // 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format
1120 // expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
1121 func FaaSTime(val string) attribute.KeyValue {
1122 return FaaSTimeKey.String(val)
1123 }
1124
1125 // FaaSCron returns an attribute KeyValue conforming to the "faas.cron"
1126 // semantic conventions. It represents a string containing the schedule period
1127 // as [Cron
1128 // Expression](https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm).
1129 func FaaSCron(val string) attribute.KeyValue {
1130 return FaaSCronKey.String(val)
1131 }
1132
1133 // Contains additional attributes for incoming FaaS spans.
1134 const (
1135 // FaaSColdstartKey is the attribute Key conforming to the "faas.coldstart"
1136 // semantic conventions. It represents a boolean that is true if the
1137 // serverless function is executed for the first time (aka cold-start).
1138 //
1139 // Type: boolean
1140 // RequirementLevel: Optional
1141 // Stability: stable
1142 FaaSColdstartKey = attribute.Key("faas.coldstart")
1143 )
1144
1145 // FaaSColdstart returns an attribute KeyValue conforming to the
1146 // "faas.coldstart" semantic conventions. It represents a boolean that is true
1147 // if the serverless function is executed for the first time (aka cold-start).
1148 func FaaSColdstart(val bool) attribute.KeyValue {
1149 return FaaSColdstartKey.Bool(val)
1150 }
1151
1152 // Contains additional attributes for outgoing FaaS spans.
1153 const (
1154 // FaaSInvokedNameKey is the attribute Key conforming to the
1155 // "faas.invoked_name" semantic conventions. It represents the name of the
1156 // invoked function.
1157 //
1158 // Type: string
1159 // RequirementLevel: Required
1160 // Stability: stable
1161 // Examples: 'my-function'
1162 // Note: SHOULD be equal to the `faas.name` resource attribute of the
1163 // invoked function.
1164 FaaSInvokedNameKey = attribute.Key("faas.invoked_name")
1165
1166 // FaaSInvokedProviderKey is the attribute Key conforming to the
1167 // "faas.invoked_provider" semantic conventions. It represents the cloud
1168 // provider of the invoked function.
1169 //
1170 // Type: Enum
1171 // RequirementLevel: Required
1172 // Stability: stable
1173 // Note: SHOULD be equal to the `cloud.provider` resource attribute of the
1174 // invoked function.
1175 FaaSInvokedProviderKey = attribute.Key("faas.invoked_provider")
1176
1177 // FaaSInvokedRegionKey is the attribute Key conforming to the
1178 // "faas.invoked_region" semantic conventions. It represents the cloud
1179 // region of the invoked function.
1180 //
1181 // Type: string
1182 // RequirementLevel: ConditionallyRequired (For some cloud providers, like
1183 // AWS or GCP, the region in which a function is hosted is essential to
1184 // uniquely identify the function and also part of its endpoint. Since it's
1185 // part of the endpoint being called, the region is always known to
1186 // clients. In these cases, `faas.invoked_region` MUST be set accordingly.
1187 // If the region is unknown to the client or not required for identifying
1188 // the invoked function, setting `faas.invoked_region` is optional.)
1189 // Stability: stable
1190 // Examples: 'eu-central-1'
1191 // Note: SHOULD be equal to the `cloud.region` resource attribute of the
1192 // invoked function.
1193 FaaSInvokedRegionKey = attribute.Key("faas.invoked_region")
1194 )
1195
1196 var (
1197 // Alibaba Cloud
1198 FaaSInvokedProviderAlibabaCloud = FaaSInvokedProviderKey.String("alibaba_cloud")
1199 // Amazon Web Services
1200 FaaSInvokedProviderAWS = FaaSInvokedProviderKey.String("aws")
1201 // Microsoft Azure
1202 FaaSInvokedProviderAzure = FaaSInvokedProviderKey.String("azure")
1203 // Google Cloud Platform
1204 FaaSInvokedProviderGCP = FaaSInvokedProviderKey.String("gcp")
1205 // Tencent Cloud
1206 FaaSInvokedProviderTencentCloud = FaaSInvokedProviderKey.String("tencent_cloud")
1207 )
1208
1209 // FaaSInvokedName returns an attribute KeyValue conforming to the
1210 // "faas.invoked_name" semantic conventions. It represents the name of the
1211 // invoked function.
1212 func FaaSInvokedName(val string) attribute.KeyValue {
1213 return FaaSInvokedNameKey.String(val)
1214 }
1215
1216 // FaaSInvokedRegion returns an attribute KeyValue conforming to the
1217 // "faas.invoked_region" semantic conventions. It represents the cloud region
1218 // of the invoked function.
1219 func FaaSInvokedRegion(val string) attribute.KeyValue {
1220 return FaaSInvokedRegionKey.String(val)
1221 }
1222
1223 // Operations that access some remote service.
1224 const (
1225 // PeerServiceKey is the attribute Key conforming to the "peer.service"
1226 // semantic conventions. It represents the
1227 // [`service.name`](../../resource/semantic_conventions/README.md#service)
1228 // of the remote service. SHOULD be equal to the actual `service.name`
1229 // resource attribute of the remote service if any.
1230 //
1231 // Type: string
1232 // RequirementLevel: Optional
1233 // Stability: stable
1234 // Examples: 'AuthTokenCache'
1235 PeerServiceKey = attribute.Key("peer.service")
1236 )
1237
1238 // PeerService returns an attribute KeyValue conforming to the
1239 // "peer.service" semantic conventions. It represents the
1240 // [`service.name`](../../resource/semantic_conventions/README.md#service) of
1241 // the remote service. SHOULD be equal to the actual `service.name` resource
1242 // attribute of the remote service if any.
1243 func PeerService(val string) attribute.KeyValue {
1244 return PeerServiceKey.String(val)
1245 }
1246
1247 // These attributes may be used for any operation with an authenticated and/or
1248 // authorized enduser.
1249 const (
1250 // EnduserIDKey is the attribute Key conforming to the "enduser.id"
1251 // semantic conventions. It represents the username or client_id extracted
1252 // from the access token or
1253 // [Authorization](https://tools.ietf.org/html/rfc7235#section-4.2) header
1254 // in the inbound request from outside the system.
1255 //
1256 // Type: string
1257 // RequirementLevel: Optional
1258 // Stability: stable
1259 // Examples: 'username'
1260 EnduserIDKey = attribute.Key("enduser.id")
1261
1262 // EnduserRoleKey is the attribute Key conforming to the "enduser.role"
1263 // semantic conventions. It represents the actual/assumed role the client
1264 // is making the request under extracted from token or application security
1265 // context.
1266 //
1267 // Type: string
1268 // RequirementLevel: Optional
1269 // Stability: stable
1270 // Examples: 'admin'
1271 EnduserRoleKey = attribute.Key("enduser.role")
1272
1273 // EnduserScopeKey is the attribute Key conforming to the "enduser.scope"
1274 // semantic conventions. It represents the scopes or granted authorities
1275 // the client currently possesses extracted from token or application
1276 // security context. The value would come from the scope associated with an
1277 // [OAuth 2.0 Access
1278 // Token](https://tools.ietf.org/html/rfc6749#section-3.3) or an attribute
1279 // value in a [SAML 2.0
1280 // Assertion](http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html).
1281 //
1282 // Type: string
1283 // RequirementLevel: Optional
1284 // Stability: stable
1285 // Examples: 'read:message, write:files'
1286 EnduserScopeKey = attribute.Key("enduser.scope")
1287 )
1288
1289 // EnduserID returns an attribute KeyValue conforming to the "enduser.id"
1290 // semantic conventions. It represents the username or client_id extracted from
1291 // the access token or
1292 // [Authorization](https://tools.ietf.org/html/rfc7235#section-4.2) header in
1293 // the inbound request from outside the system.
1294 func EnduserID(val string) attribute.KeyValue {
1295 return EnduserIDKey.String(val)
1296 }
1297
1298 // EnduserRole returns an attribute KeyValue conforming to the
1299 // "enduser.role" semantic conventions. It represents the actual/assumed role
1300 // the client is making the request under extracted from token or application
1301 // security context.
1302 func EnduserRole(val string) attribute.KeyValue {
1303 return EnduserRoleKey.String(val)
1304 }
1305
1306 // EnduserScope returns an attribute KeyValue conforming to the
1307 // "enduser.scope" semantic conventions. It represents the scopes or granted
1308 // authorities the client currently possesses extracted from token or
1309 // application security context. The value would come from the scope associated
1310 // with an [OAuth 2.0 Access
1311 // Token](https://tools.ietf.org/html/rfc6749#section-3.3) or an attribute
1312 // value in a [SAML 2.0
1313 // Assertion](http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html).
1314 func EnduserScope(val string) attribute.KeyValue {
1315 return EnduserScopeKey.String(val)
1316 }
1317
1318 // These attributes may be used for any operation to store information about a
1319 // thread that started a span.
1320 const (
1321 // ThreadIDKey is the attribute Key conforming to the "thread.id" semantic
1322 // conventions. It represents the current "managed" thread ID (as opposed
1323 // to OS thread ID).
1324 //
1325 // Type: int
1326 // RequirementLevel: Optional
1327 // Stability: stable
1328 // Examples: 42
1329 ThreadIDKey = attribute.Key("thread.id")
1330
1331 // ThreadNameKey is the attribute Key conforming to the "thread.name"
1332 // semantic conventions. It represents the current thread name.
1333 //
1334 // Type: string
1335 // RequirementLevel: Optional
1336 // Stability: stable
1337 // Examples: 'main'
1338 ThreadNameKey = attribute.Key("thread.name")
1339 )
1340
1341 // ThreadID returns an attribute KeyValue conforming to the "thread.id"
1342 // semantic conventions. It represents the current "managed" thread ID (as
1343 // opposed to OS thread ID).
1344 func ThreadID(val int) attribute.KeyValue {
1345 return ThreadIDKey.Int(val)
1346 }
1347
1348 // ThreadName returns an attribute KeyValue conforming to the "thread.name"
1349 // semantic conventions. It represents the current thread name.
1350 func ThreadName(val string) attribute.KeyValue {
1351 return ThreadNameKey.String(val)
1352 }
1353
1354 // These attributes allow to report this unit of code and therefore to provide
1355 // more context about the span.
1356 const (
1357 // CodeFunctionKey is the attribute Key conforming to the "code.function"
1358 // semantic conventions. It represents the method or function name, or
1359 // equivalent (usually rightmost part of the code unit's name).
1360 //
1361 // Type: string
1362 // RequirementLevel: Optional
1363 // Stability: stable
1364 // Examples: 'serveRequest'
1365 CodeFunctionKey = attribute.Key("code.function")
1366
1367 // CodeNamespaceKey is the attribute Key conforming to the "code.namespace"
1368 // semantic conventions. It represents the "namespace" within which
1369 // `code.function` is defined. Usually the qualified class or module name,
1370 // such that `code.namespace` + some separator + `code.function` form a
1371 // unique identifier for the code unit.
1372 //
1373 // Type: string
1374 // RequirementLevel: Optional
1375 // Stability: stable
1376 // Examples: 'com.example.MyHTTPService'
1377 CodeNamespaceKey = attribute.Key("code.namespace")
1378
1379 // CodeFilepathKey is the attribute Key conforming to the "code.filepath"
1380 // semantic conventions. It represents the source code file name that
1381 // identifies the code unit as uniquely as possible (preferably an absolute
1382 // file path).
1383 //
1384 // Type: string
1385 // RequirementLevel: Optional
1386 // Stability: stable
1387 // Examples: '/usr/local/MyApplication/content_root/app/index.php'
1388 CodeFilepathKey = attribute.Key("code.filepath")
1389
1390 // CodeLineNumberKey is the attribute Key conforming to the "code.lineno"
1391 // semantic conventions. It represents the line number in `code.filepath`
1392 // best representing the operation. It SHOULD point within the code unit
1393 // named in `code.function`.
1394 //
1395 // Type: int
1396 // RequirementLevel: Optional
1397 // Stability: stable
1398 // Examples: 42
1399 CodeLineNumberKey = attribute.Key("code.lineno")
1400
1401 // CodeColumnKey is the attribute Key conforming to the "code.column"
1402 // semantic conventions. It represents the column number in `code.filepath`
1403 // best representing the operation. It SHOULD point within the code unit
1404 // named in `code.function`.
1405 //
1406 // Type: int
1407 // RequirementLevel: Optional
1408 // Stability: stable
1409 // Examples: 16
1410 CodeColumnKey = attribute.Key("code.column")
1411 )
1412
1413 // CodeFunction returns an attribute KeyValue conforming to the
1414 // "code.function" semantic conventions. It represents the method or function
1415 // name, or equivalent (usually rightmost part of the code unit's name).
1416 func CodeFunction(val string) attribute.KeyValue {
1417 return CodeFunctionKey.String(val)
1418 }
1419
1420 // CodeNamespace returns an attribute KeyValue conforming to the
1421 // "code.namespace" semantic conventions. It represents the "namespace" within
1422 // which `code.function` is defined. Usually the qualified class or module
1423 // name, such that `code.namespace` + some separator + `code.function` form a
1424 // unique identifier for the code unit.
1425 func CodeNamespace(val string) attribute.KeyValue {
1426 return CodeNamespaceKey.String(val)
1427 }
1428
1429 // CodeFilepath returns an attribute KeyValue conforming to the
1430 // "code.filepath" semantic conventions. It represents the source code file
1431 // name that identifies the code unit as uniquely as possible (preferably an
1432 // absolute file path).
1433 func CodeFilepath(val string) attribute.KeyValue {
1434 return CodeFilepathKey.String(val)
1435 }
1436
1437 // CodeLineNumber returns an attribute KeyValue conforming to the "code.lineno"
1438 // semantic conventions. It represents the line number in `code.filepath` best
1439 // representing the operation. It SHOULD point within the code unit named in
1440 // `code.function`.
1441 func CodeLineNumber(val int) attribute.KeyValue {
1442 return CodeLineNumberKey.Int(val)
1443 }
1444
1445 // CodeColumn returns an attribute KeyValue conforming to the "code.column"
1446 // semantic conventions. It represents the column number in `code.filepath`
1447 // best representing the operation. It SHOULD point within the code unit named
1448 // in `code.function`.
1449 func CodeColumn(val int) attribute.KeyValue {
1450 return CodeColumnKey.Int(val)
1451 }
1452
1453 // Semantic Convention for HTTP Client
1454 const (
1455 // HTTPURLKey is the attribute Key conforming to the "http.url" semantic
1456 // conventions. It represents the full HTTP request URL in the form
1457 // `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is
1458 // not transmitted over HTTP, but if it is known, it should be included
1459 // nevertheless.
1460 //
1461 // Type: string
1462 // RequirementLevel: Required
1463 // Stability: stable
1464 // Examples: 'https://www.foo.bar/search?q=OpenTelemetry#SemConv'
1465 // Note: `http.url` MUST NOT contain credentials passed via URL in form of
1466 // `https://username:password@www.example.com/`. In such case the
1467 // attribute's value should be `https://www.example.com/`.
1468 HTTPURLKey = attribute.Key("http.url")
1469
1470 // HTTPResendCountKey is the attribute Key conforming to the
1471 // "http.resend_count" semantic conventions. It represents the ordinal
1472 // number of request resending attempt (for any reason, including
1473 // redirects).
1474 //
1475 // Type: int
1476 // RequirementLevel: Recommended (if and only if request was retried.)
1477 // Stability: stable
1478 // Examples: 3
1479 // Note: The resend count SHOULD be updated each time an HTTP request gets
1480 // resent by the client, regardless of what was the cause of the resending
1481 // (e.g. redirection, authorization failure, 503 Server Unavailable,
1482 // network issues, or any other).
1483 HTTPResendCountKey = attribute.Key("http.resend_count")
1484 )
1485
1486 // HTTPURL returns an attribute KeyValue conforming to the "http.url"
1487 // semantic conventions. It represents the full HTTP request URL in the form
1488 // `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not
1489 // transmitted over HTTP, but if it is known, it should be included
1490 // nevertheless.
1491 func HTTPURL(val string) attribute.KeyValue {
1492 return HTTPURLKey.String(val)
1493 }
1494
1495 // HTTPResendCount returns an attribute KeyValue conforming to the
1496 // "http.resend_count" semantic conventions. It represents the ordinal number
1497 // of request resending attempt (for any reason, including redirects).
1498 func HTTPResendCount(val int) attribute.KeyValue {
1499 return HTTPResendCountKey.Int(val)
1500 }
1501
1502 // Semantic Convention for HTTP Server
1503 const (
1504 // HTTPTargetKey is the attribute Key conforming to the "http.target"
1505 // semantic conventions. It represents the full request target as passed in
1506 // a HTTP request line or equivalent.
1507 //
1508 // Type: string
1509 // RequirementLevel: Required
1510 // Stability: stable
1511 // Examples: '/users/12314/?q=ddds'
1512 HTTPTargetKey = attribute.Key("http.target")
1513
1514 // HTTPClientIPKey is the attribute Key conforming to the "http.client_ip"
1515 // semantic conventions. It represents the IP address of the original
1516 // client behind all proxies, if known (e.g. from
1517 // [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)).
1518 //
1519 // Type: string
1520 // RequirementLevel: Optional
1521 // Stability: stable
1522 // Examples: '83.164.160.102'
1523 // Note: This is not necessarily the same as `net.sock.peer.addr`, which
1524 // would
1525 // identify the network-level peer, which may be a proxy.
1526 //
1527 // This attribute should be set when a source of information different
1528 // from the one used for `net.sock.peer.addr`, is available even if that
1529 // other
1530 // source just confirms the same value as `net.sock.peer.addr`.
1531 // Rationale: For `net.sock.peer.addr`, one typically does not know if it
1532 // comes from a proxy, reverse proxy, or the actual client. Setting
1533 // `http.client_ip` when it's the same as `net.sock.peer.addr` means that
1534 // one is at least somewhat confident that the address is not that of
1535 // the closest proxy.
1536 HTTPClientIPKey = attribute.Key("http.client_ip")
1537 )
1538
1539 // HTTPTarget returns an attribute KeyValue conforming to the "http.target"
1540 // semantic conventions. It represents the full request target as passed in a
1541 // HTTP request line or equivalent.
1542 func HTTPTarget(val string) attribute.KeyValue {
1543 return HTTPTargetKey.String(val)
1544 }
1545
1546 // HTTPClientIP returns an attribute KeyValue conforming to the
1547 // "http.client_ip" semantic conventions. It represents the IP address of the
1548 // original client behind all proxies, if known (e.g. from
1549 // [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)).
1550 func HTTPClientIP(val string) attribute.KeyValue {
1551 return HTTPClientIPKey.String(val)
1552 }
1553
1554 // The `aws` conventions apply to operations using the AWS SDK. They map
1555 // request or response parameters in AWS SDK API calls to attributes on a Span.
1556 // The conventions have been collected over time based on feedback from AWS
1557 // users of tracing and will continue to evolve as new interesting conventions
1558 // are found.
1559 // Some descriptions are also provided for populating general OpenTelemetry
1560 // semantic conventions based on these APIs.
1561 const (
1562 // AWSRequestIDKey is the attribute Key conforming to the "aws.request_id"
1563 // semantic conventions. It represents the AWS request ID as returned in
1564 // the response headers `x-amz-request-id` or `x-amz-requestid`.
1565 //
1566 // Type: string
1567 // RequirementLevel: Optional
1568 // Stability: stable
1569 // Examples: '79b9da39-b7ae-508a-a6bc-864b2829c622', 'C9ER4AJX75574TDJ'
1570 AWSRequestIDKey = attribute.Key("aws.request_id")
1571 )
1572
1573 // AWSRequestID returns an attribute KeyValue conforming to the
1574 // "aws.request_id" semantic conventions. It represents the AWS request ID as
1575 // returned in the response headers `x-amz-request-id` or `x-amz-requestid`.
1576 func AWSRequestID(val string) attribute.KeyValue {
1577 return AWSRequestIDKey.String(val)
1578 }
1579
1580 // Attributes that exist for multiple DynamoDB request types.
1581 const (
1582 // AWSDynamoDBTableNamesKey is the attribute Key conforming to the
1583 // "aws.dynamodb.table_names" semantic conventions. It represents the keys
1584 // in the `RequestItems` object field.
1585 //
1586 // Type: string[]
1587 // RequirementLevel: Optional
1588 // Stability: stable
1589 // Examples: 'Users', 'Cats'
1590 AWSDynamoDBTableNamesKey = attribute.Key("aws.dynamodb.table_names")
1591
1592 // AWSDynamoDBConsumedCapacityKey is the attribute Key conforming to the
1593 // "aws.dynamodb.consumed_capacity" semantic conventions. It represents the
1594 // JSON-serialized value of each item in the `ConsumedCapacity` response
1595 // field.
1596 //
1597 // Type: string[]
1598 // RequirementLevel: Optional
1599 // Stability: stable
1600 // Examples: '{ "CapacityUnits": number, "GlobalSecondaryIndexes": {
1601 // "string" : { "CapacityUnits": number, "ReadCapacityUnits": number,
1602 // "WriteCapacityUnits": number } }, "LocalSecondaryIndexes": { "string" :
1603 // { "CapacityUnits": number, "ReadCapacityUnits": number,
1604 // "WriteCapacityUnits": number } }, "ReadCapacityUnits": number, "Table":
1605 // { "CapacityUnits": number, "ReadCapacityUnits": number,
1606 // "WriteCapacityUnits": number }, "TableName": "string",
1607 // "WriteCapacityUnits": number }'
1608 AWSDynamoDBConsumedCapacityKey = attribute.Key("aws.dynamodb.consumed_capacity")
1609
1610 // AWSDynamoDBItemCollectionMetricsKey is the attribute Key conforming to
1611 // the "aws.dynamodb.item_collection_metrics" semantic conventions. It
1612 // represents the JSON-serialized value of the `ItemCollectionMetrics`
1613 // response field.
1614 //
1615 // Type: string
1616 // RequirementLevel: Optional
1617 // Stability: stable
1618 // Examples: '{ "string" : [ { "ItemCollectionKey": { "string" : { "B":
1619 // blob, "BOOL": boolean, "BS": [ blob ], "L": [ "AttributeValue" ], "M": {
1620 // "string" : "AttributeValue" }, "N": "string", "NS": [ "string" ],
1621 // "NULL": boolean, "S": "string", "SS": [ "string" ] } },
1622 // "SizeEstimateRangeGB": [ number ] } ] }'
1623 AWSDynamoDBItemCollectionMetricsKey = attribute.Key("aws.dynamodb.item_collection_metrics")
1624
1625 // AWSDynamoDBProvisionedReadCapacityKey is the attribute Key conforming to
1626 // the "aws.dynamodb.provisioned_read_capacity" semantic conventions. It
1627 // represents the value of the `ProvisionedThroughput.ReadCapacityUnits`
1628 // request parameter.
1629 //
1630 // Type: double
1631 // RequirementLevel: Optional
1632 // Stability: stable
1633 // Examples: 1.0, 2.0
1634 AWSDynamoDBProvisionedReadCapacityKey = attribute.Key("aws.dynamodb.provisioned_read_capacity")
1635
1636 // AWSDynamoDBProvisionedWriteCapacityKey is the attribute Key conforming
1637 // to the "aws.dynamodb.provisioned_write_capacity" semantic conventions.
1638 // It represents the value of the
1639 // `ProvisionedThroughput.WriteCapacityUnits` request parameter.
1640 //
1641 // Type: double
1642 // RequirementLevel: Optional
1643 // Stability: stable
1644 // Examples: 1.0, 2.0
1645 AWSDynamoDBProvisionedWriteCapacityKey = attribute.Key("aws.dynamodb.provisioned_write_capacity")
1646
1647 // AWSDynamoDBConsistentReadKey is the attribute Key conforming to the
1648 // "aws.dynamodb.consistent_read" semantic conventions. It represents the
1649 // value of the `ConsistentRead` request parameter.
1650 //
1651 // Type: boolean
1652 // RequirementLevel: Optional
1653 // Stability: stable
1654 AWSDynamoDBConsistentReadKey = attribute.Key("aws.dynamodb.consistent_read")
1655
1656 // AWSDynamoDBProjectionKey is the attribute Key conforming to the
1657 // "aws.dynamodb.projection" semantic conventions. It represents the value
1658 // of the `ProjectionExpression` request parameter.
1659 //
1660 // Type: string
1661 // RequirementLevel: Optional
1662 // Stability: stable
1663 // Examples: 'Title', 'Title, Price, Color', 'Title, Description,
1664 // RelatedItems, ProductReviews'
1665 AWSDynamoDBProjectionKey = attribute.Key("aws.dynamodb.projection")
1666
1667 // AWSDynamoDBLimitKey is the attribute Key conforming to the
1668 // "aws.dynamodb.limit" semantic conventions. It represents the value of
1669 // the `Limit` request parameter.
1670 //
1671 // Type: int
1672 // RequirementLevel: Optional
1673 // Stability: stable
1674 // Examples: 10
1675 AWSDynamoDBLimitKey = attribute.Key("aws.dynamodb.limit")
1676
1677 // AWSDynamoDBAttributesToGetKey is the attribute Key conforming to the
1678 // "aws.dynamodb.attributes_to_get" semantic conventions. It represents the
1679 // value of the `AttributesToGet` request parameter.
1680 //
1681 // Type: string[]
1682 // RequirementLevel: Optional
1683 // Stability: stable
1684 // Examples: 'lives', 'id'
1685 AWSDynamoDBAttributesToGetKey = attribute.Key("aws.dynamodb.attributes_to_get")
1686
1687 // AWSDynamoDBIndexNameKey is the attribute Key conforming to the
1688 // "aws.dynamodb.index_name" semantic conventions. It represents the value
1689 // of the `IndexName` request parameter.
1690 //
1691 // Type: string
1692 // RequirementLevel: Optional
1693 // Stability: stable
1694 // Examples: 'name_to_group'
1695 AWSDynamoDBIndexNameKey = attribute.Key("aws.dynamodb.index_name")
1696
1697 // AWSDynamoDBSelectKey is the attribute Key conforming to the
1698 // "aws.dynamodb.select" semantic conventions. It represents the value of
1699 // the `Select` request parameter.
1700 //
1701 // Type: string
1702 // RequirementLevel: Optional
1703 // Stability: stable
1704 // Examples: 'ALL_ATTRIBUTES', 'COUNT'
1705 AWSDynamoDBSelectKey = attribute.Key("aws.dynamodb.select")
1706 )
1707
1708 // AWSDynamoDBTableNames returns an attribute KeyValue conforming to the
1709 // "aws.dynamodb.table_names" semantic conventions. It represents the keys in
1710 // the `RequestItems` object field.
1711 func AWSDynamoDBTableNames(val ...string) attribute.KeyValue {
1712 return AWSDynamoDBTableNamesKey.StringSlice(val)
1713 }
1714
1715 // AWSDynamoDBConsumedCapacity returns an attribute KeyValue conforming to
1716 // the "aws.dynamodb.consumed_capacity" semantic conventions. It represents the
1717 // JSON-serialized value of each item in the `ConsumedCapacity` response field.
1718 func AWSDynamoDBConsumedCapacity(val ...string) attribute.KeyValue {
1719 return AWSDynamoDBConsumedCapacityKey.StringSlice(val)
1720 }
1721
1722 // AWSDynamoDBItemCollectionMetrics returns an attribute KeyValue conforming
1723 // to the "aws.dynamodb.item_collection_metrics" semantic conventions. It
1724 // represents the JSON-serialized value of the `ItemCollectionMetrics` response
1725 // field.
1726 func AWSDynamoDBItemCollectionMetrics(val string) attribute.KeyValue {
1727 return AWSDynamoDBItemCollectionMetricsKey.String(val)
1728 }
1729
1730 // AWSDynamoDBProvisionedReadCapacity returns an attribute KeyValue
1731 // conforming to the "aws.dynamodb.provisioned_read_capacity" semantic
1732 // conventions. It represents the value of the
1733 // `ProvisionedThroughput.ReadCapacityUnits` request parameter.
1734 func AWSDynamoDBProvisionedReadCapacity(val float64) attribute.KeyValue {
1735 return AWSDynamoDBProvisionedReadCapacityKey.Float64(val)
1736 }
1737
1738 // AWSDynamoDBProvisionedWriteCapacity returns an attribute KeyValue
1739 // conforming to the "aws.dynamodb.provisioned_write_capacity" semantic
1740 // conventions. It represents the value of the
1741 // `ProvisionedThroughput.WriteCapacityUnits` request parameter.
1742 func AWSDynamoDBProvisionedWriteCapacity(val float64) attribute.KeyValue {
1743 return AWSDynamoDBProvisionedWriteCapacityKey.Float64(val)
1744 }
1745
1746 // AWSDynamoDBConsistentRead returns an attribute KeyValue conforming to the
1747 // "aws.dynamodb.consistent_read" semantic conventions. It represents the value
1748 // of the `ConsistentRead` request parameter.
1749 func AWSDynamoDBConsistentRead(val bool) attribute.KeyValue {
1750 return AWSDynamoDBConsistentReadKey.Bool(val)
1751 }
1752
1753 // AWSDynamoDBProjection returns an attribute KeyValue conforming to the
1754 // "aws.dynamodb.projection" semantic conventions. It represents the value of
1755 // the `ProjectionExpression` request parameter.
1756 func AWSDynamoDBProjection(val string) attribute.KeyValue {
1757 return AWSDynamoDBProjectionKey.String(val)
1758 }
1759
1760 // AWSDynamoDBLimit returns an attribute KeyValue conforming to the
1761 // "aws.dynamodb.limit" semantic conventions. It represents the value of the
1762 // `Limit` request parameter.
1763 func AWSDynamoDBLimit(val int) attribute.KeyValue {
1764 return AWSDynamoDBLimitKey.Int(val)
1765 }
1766
1767 // AWSDynamoDBAttributesToGet returns an attribute KeyValue conforming to
1768 // the "aws.dynamodb.attributes_to_get" semantic conventions. It represents the
1769 // value of the `AttributesToGet` request parameter.
1770 func AWSDynamoDBAttributesToGet(val ...string) attribute.KeyValue {
1771 return AWSDynamoDBAttributesToGetKey.StringSlice(val)
1772 }
1773
1774 // AWSDynamoDBIndexName returns an attribute KeyValue conforming to the
1775 // "aws.dynamodb.index_name" semantic conventions. It represents the value of
1776 // the `IndexName` request parameter.
1777 func AWSDynamoDBIndexName(val string) attribute.KeyValue {
1778 return AWSDynamoDBIndexNameKey.String(val)
1779 }
1780
1781 // AWSDynamoDBSelect returns an attribute KeyValue conforming to the
1782 // "aws.dynamodb.select" semantic conventions. It represents the value of the
1783 // `Select` request parameter.
1784 func AWSDynamoDBSelect(val string) attribute.KeyValue {
1785 return AWSDynamoDBSelectKey.String(val)
1786 }
1787
1788 // DynamoDB.CreateTable
1789 const (
1790 // AWSDynamoDBGlobalSecondaryIndexesKey is the attribute Key conforming to
1791 // the "aws.dynamodb.global_secondary_indexes" semantic conventions. It
1792 // represents the JSON-serialized value of each item of the
1793 // `GlobalSecondaryIndexes` request field
1794 //
1795 // Type: string[]
1796 // RequirementLevel: Optional
1797 // Stability: stable
1798 // Examples: '{ "IndexName": "string", "KeySchema": [ { "AttributeName":
1799 // "string", "KeyType": "string" } ], "Projection": { "NonKeyAttributes": [
1800 // "string" ], "ProjectionType": "string" }, "ProvisionedThroughput": {
1801 // "ReadCapacityUnits": number, "WriteCapacityUnits": number } }'
1802 AWSDynamoDBGlobalSecondaryIndexesKey = attribute.Key("aws.dynamodb.global_secondary_indexes")
1803
1804 // AWSDynamoDBLocalSecondaryIndexesKey is the attribute Key conforming to
1805 // the "aws.dynamodb.local_secondary_indexes" semantic conventions. It
1806 // represents the JSON-serialized value of each item of the
1807 // `LocalSecondaryIndexes` request field.
1808 //
1809 // Type: string[]
1810 // RequirementLevel: Optional
1811 // Stability: stable
1812 // Examples: '{ "IndexARN": "string", "IndexName": "string",
1813 // "IndexSizeBytes": number, "ItemCount": number, "KeySchema": [ {
1814 // "AttributeName": "string", "KeyType": "string" } ], "Projection": {
1815 // "NonKeyAttributes": [ "string" ], "ProjectionType": "string" } }'
1816 AWSDynamoDBLocalSecondaryIndexesKey = attribute.Key("aws.dynamodb.local_secondary_indexes")
1817 )
1818
1819 // AWSDynamoDBGlobalSecondaryIndexes returns an attribute KeyValue
1820 // conforming to the "aws.dynamodb.global_secondary_indexes" semantic
1821 // conventions. It represents the JSON-serialized value of each item of the
1822 // `GlobalSecondaryIndexes` request field
1823 func AWSDynamoDBGlobalSecondaryIndexes(val ...string) attribute.KeyValue {
1824 return AWSDynamoDBGlobalSecondaryIndexesKey.StringSlice(val)
1825 }
1826
1827 // AWSDynamoDBLocalSecondaryIndexes returns an attribute KeyValue conforming
1828 // to the "aws.dynamodb.local_secondary_indexes" semantic conventions. It
1829 // represents the JSON-serialized value of each item of the
1830 // `LocalSecondaryIndexes` request field.
1831 func AWSDynamoDBLocalSecondaryIndexes(val ...string) attribute.KeyValue {
1832 return AWSDynamoDBLocalSecondaryIndexesKey.StringSlice(val)
1833 }
1834
1835 // DynamoDB.ListTables
1836 const (
1837 // AWSDynamoDBExclusiveStartTableKey is the attribute Key conforming to the
1838 // "aws.dynamodb.exclusive_start_table" semantic conventions. It represents
1839 // the value of the `ExclusiveStartTableName` request parameter.
1840 //
1841 // Type: string
1842 // RequirementLevel: Optional
1843 // Stability: stable
1844 // Examples: 'Users', 'CatsTable'
1845 AWSDynamoDBExclusiveStartTableKey = attribute.Key("aws.dynamodb.exclusive_start_table")
1846
1847 // AWSDynamoDBTableCountKey is the attribute Key conforming to the
1848 // "aws.dynamodb.table_count" semantic conventions. It represents the the
1849 // number of items in the `TableNames` response parameter.
1850 //
1851 // Type: int
1852 // RequirementLevel: Optional
1853 // Stability: stable
1854 // Examples: 20
1855 AWSDynamoDBTableCountKey = attribute.Key("aws.dynamodb.table_count")
1856 )
1857
1858 // AWSDynamoDBExclusiveStartTable returns an attribute KeyValue conforming
1859 // to the "aws.dynamodb.exclusive_start_table" semantic conventions. It
1860 // represents the value of the `ExclusiveStartTableName` request parameter.
1861 func AWSDynamoDBExclusiveStartTable(val string) attribute.KeyValue {
1862 return AWSDynamoDBExclusiveStartTableKey.String(val)
1863 }
1864
1865 // AWSDynamoDBTableCount returns an attribute KeyValue conforming to the
1866 // "aws.dynamodb.table_count" semantic conventions. It represents the the
1867 // number of items in the `TableNames` response parameter.
1868 func AWSDynamoDBTableCount(val int) attribute.KeyValue {
1869 return AWSDynamoDBTableCountKey.Int(val)
1870 }
1871
1872 // DynamoDB.Query
1873 const (
1874 // AWSDynamoDBScanForwardKey is the attribute Key conforming to the
1875 // "aws.dynamodb.scan_forward" semantic conventions. It represents the
1876 // value of the `ScanIndexForward` request parameter.
1877 //
1878 // Type: boolean
1879 // RequirementLevel: Optional
1880 // Stability: stable
1881 AWSDynamoDBScanForwardKey = attribute.Key("aws.dynamodb.scan_forward")
1882 )
1883
1884 // AWSDynamoDBScanForward returns an attribute KeyValue conforming to the
1885 // "aws.dynamodb.scan_forward" semantic conventions. It represents the value of
1886 // the `ScanIndexForward` request parameter.
1887 func AWSDynamoDBScanForward(val bool) attribute.KeyValue {
1888 return AWSDynamoDBScanForwardKey.Bool(val)
1889 }
1890
1891 // DynamoDB.Scan
1892 const (
1893 // AWSDynamoDBSegmentKey is the attribute Key conforming to the
1894 // "aws.dynamodb.segment" semantic conventions. It represents the value of
1895 // the `Segment` request parameter.
1896 //
1897 // Type: int
1898 // RequirementLevel: Optional
1899 // Stability: stable
1900 // Examples: 10
1901 AWSDynamoDBSegmentKey = attribute.Key("aws.dynamodb.segment")
1902
1903 // AWSDynamoDBTotalSegmentsKey is the attribute Key conforming to the
1904 // "aws.dynamodb.total_segments" semantic conventions. It represents the
1905 // value of the `TotalSegments` request parameter.
1906 //
1907 // Type: int
1908 // RequirementLevel: Optional
1909 // Stability: stable
1910 // Examples: 100
1911 AWSDynamoDBTotalSegmentsKey = attribute.Key("aws.dynamodb.total_segments")
1912
1913 // AWSDynamoDBCountKey is the attribute Key conforming to the
1914 // "aws.dynamodb.count" semantic conventions. It represents the value of
1915 // the `Count` response parameter.
1916 //
1917 // Type: int
1918 // RequirementLevel: Optional
1919 // Stability: stable
1920 // Examples: 10
1921 AWSDynamoDBCountKey = attribute.Key("aws.dynamodb.count")
1922
1923 // AWSDynamoDBScannedCountKey is the attribute Key conforming to the
1924 // "aws.dynamodb.scanned_count" semantic conventions. It represents the
1925 // value of the `ScannedCount` response parameter.
1926 //
1927 // Type: int
1928 // RequirementLevel: Optional
1929 // Stability: stable
1930 // Examples: 50
1931 AWSDynamoDBScannedCountKey = attribute.Key("aws.dynamodb.scanned_count")
1932 )
1933
1934 // AWSDynamoDBSegment returns an attribute KeyValue conforming to the
1935 // "aws.dynamodb.segment" semantic conventions. It represents the value of the
1936 // `Segment` request parameter.
1937 func AWSDynamoDBSegment(val int) attribute.KeyValue {
1938 return AWSDynamoDBSegmentKey.Int(val)
1939 }
1940
1941 // AWSDynamoDBTotalSegments returns an attribute KeyValue conforming to the
1942 // "aws.dynamodb.total_segments" semantic conventions. It represents the value
1943 // of the `TotalSegments` request parameter.
1944 func AWSDynamoDBTotalSegments(val int) attribute.KeyValue {
1945 return AWSDynamoDBTotalSegmentsKey.Int(val)
1946 }
1947
1948 // AWSDynamoDBCount returns an attribute KeyValue conforming to the
1949 // "aws.dynamodb.count" semantic conventions. It represents the value of the
1950 // `Count` response parameter.
1951 func AWSDynamoDBCount(val int) attribute.KeyValue {
1952 return AWSDynamoDBCountKey.Int(val)
1953 }
1954
1955 // AWSDynamoDBScannedCount returns an attribute KeyValue conforming to the
1956 // "aws.dynamodb.scanned_count" semantic conventions. It represents the value
1957 // of the `ScannedCount` response parameter.
1958 func AWSDynamoDBScannedCount(val int) attribute.KeyValue {
1959 return AWSDynamoDBScannedCountKey.Int(val)
1960 }
1961
1962 // DynamoDB.UpdateTable
1963 const (
1964 // AWSDynamoDBAttributeDefinitionsKey is the attribute Key conforming to
1965 // the "aws.dynamodb.attribute_definitions" semantic conventions. It
1966 // represents the JSON-serialized value of each item in the
1967 // `AttributeDefinitions` request field.
1968 //
1969 // Type: string[]
1970 // RequirementLevel: Optional
1971 // Stability: stable
1972 // Examples: '{ "AttributeName": "string", "AttributeType": "string" }'
1973 AWSDynamoDBAttributeDefinitionsKey = attribute.Key("aws.dynamodb.attribute_definitions")
1974
1975 // AWSDynamoDBGlobalSecondaryIndexUpdatesKey is the attribute Key
1976 // conforming to the "aws.dynamodb.global_secondary_index_updates" semantic
1977 // conventions. It represents the JSON-serialized value of each item in the
1978 // the `GlobalSecondaryIndexUpdates` request field.
1979 //
1980 // Type: string[]
1981 // RequirementLevel: Optional
1982 // Stability: stable
1983 // Examples: '{ "Create": { "IndexName": "string", "KeySchema": [ {
1984 // "AttributeName": "string", "KeyType": "string" } ], "Projection": {
1985 // "NonKeyAttributes": [ "string" ], "ProjectionType": "string" },
1986 // "ProvisionedThroughput": { "ReadCapacityUnits": number,
1987 // "WriteCapacityUnits": number } }'
1988 AWSDynamoDBGlobalSecondaryIndexUpdatesKey = attribute.Key("aws.dynamodb.global_secondary_index_updates")
1989 )
1990
1991 // AWSDynamoDBAttributeDefinitions returns an attribute KeyValue conforming
1992 // to the "aws.dynamodb.attribute_definitions" semantic conventions. It
1993 // represents the JSON-serialized value of each item in the
1994 // `AttributeDefinitions` request field.
1995 func AWSDynamoDBAttributeDefinitions(val ...string) attribute.KeyValue {
1996 return AWSDynamoDBAttributeDefinitionsKey.StringSlice(val)
1997 }
1998
1999 // AWSDynamoDBGlobalSecondaryIndexUpdates returns an attribute KeyValue
2000 // conforming to the "aws.dynamodb.global_secondary_index_updates" semantic
2001 // conventions. It represents the JSON-serialized value of each item in the the
2002 // `GlobalSecondaryIndexUpdates` request field.
2003 func AWSDynamoDBGlobalSecondaryIndexUpdates(val ...string) attribute.KeyValue {
2004 return AWSDynamoDBGlobalSecondaryIndexUpdatesKey.StringSlice(val)
2005 }
2006
2007 // Attributes that exist for S3 request types.
2008 const (
2009 // AWSS3BucketKey is the attribute Key conforming to the "aws.s3.bucket"
2010 // semantic conventions. It represents the S3 bucket name the request
2011 // refers to. Corresponds to the `--bucket` parameter of the [S3
2012 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html)
2013 // operations.
2014 //
2015 // Type: string
2016 // RequirementLevel: Optional
2017 // Stability: stable
2018 // Examples: 'some-bucket-name'
2019 // Note: The `bucket` attribute is applicable to all S3 operations that
2020 // reference a bucket, i.e. that require the bucket name as a mandatory
2021 // parameter.
2022 // This applies to almost all S3 operations except `list-buckets`.
2023 AWSS3BucketKey = attribute.Key("aws.s3.bucket")
2024
2025 // AWSS3KeyKey is the attribute Key conforming to the "aws.s3.key" semantic
2026 // conventions. It represents the S3 object key the request refers to.
2027 // Corresponds to the `--key` parameter of the [S3
2028 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html)
2029 // operations.
2030 //
2031 // Type: string
2032 // RequirementLevel: Optional
2033 // Stability: stable
2034 // Examples: 'someFile.yml'
2035 // Note: The `key` attribute is applicable to all object-related S3
2036 // operations, i.e. that require the object key as a mandatory parameter.
2037 // This applies in particular to the following operations:
2038 //
2039 // -
2040 // [copy-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html)
2041 // -
2042 // [delete-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html)
2043 // -
2044 // [get-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/get-object.html)
2045 // -
2046 // [head-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/head-object.html)
2047 // -
2048 // [put-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/put-object.html)
2049 // -
2050 // [restore-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/restore-object.html)
2051 // -
2052 // [select-object-content](https://docs.aws.amazon.com/cli/latest/reference/s3api/select-object-content.html)
2053 // -
2054 // [abort-multipart-upload](https://docs.aws.amazon.com/cli/latest/reference/s3api/abort-multipart-upload.html)
2055 // -
2056 // [complete-multipart-upload](https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html)
2057 // -
2058 // [create-multipart-upload](https://docs.aws.amazon.com/cli/latest/reference/s3api/create-multipart-upload.html)
2059 // -
2060 // [list-parts](https://docs.aws.amazon.com/cli/latest/reference/s3api/list-parts.html)
2061 // -
2062 // [upload-part](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html)
2063 // -
2064 // [upload-part-copy](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html)
2065 AWSS3KeyKey = attribute.Key("aws.s3.key")
2066
2067 // AWSS3CopySourceKey is the attribute Key conforming to the
2068 // "aws.s3.copy_source" semantic conventions. It represents the source
2069 // object (in the form `bucket`/`key`) for the copy operation.
2070 //
2071 // Type: string
2072 // RequirementLevel: Optional
2073 // Stability: stable
2074 // Examples: 'someFile.yml'
2075 // Note: The `copy_source` attribute applies to S3 copy operations and
2076 // corresponds to the `--copy-source` parameter
2077 // of the [copy-object operation within the S3
2078 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html).
2079 // This applies in particular to the following operations:
2080 //
2081 // -
2082 // [copy-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html)
2083 // -
2084 // [upload-part-copy](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html)
2085 AWSS3CopySourceKey = attribute.Key("aws.s3.copy_source")
2086
2087 // AWSS3UploadIDKey is the attribute Key conforming to the
2088 // "aws.s3.upload_id" semantic conventions. It represents the upload ID
2089 // that identifies the multipart upload.
2090 //
2091 // Type: string
2092 // RequirementLevel: Optional
2093 // Stability: stable
2094 // Examples: 'dfRtDYWFbkRONycy.Yxwh66Yjlx.cph0gtNBtJ'
2095 // Note: The `upload_id` attribute applies to S3 multipart-upload
2096 // operations and corresponds to the `--upload-id` parameter
2097 // of the [S3
2098 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html)
2099 // multipart operations.
2100 // This applies in particular to the following operations:
2101 //
2102 // -
2103 // [abort-multipart-upload](https://docs.aws.amazon.com/cli/latest/reference/s3api/abort-multipart-upload.html)
2104 // -
2105 // [complete-multipart-upload](https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html)
2106 // -
2107 // [list-parts](https://docs.aws.amazon.com/cli/latest/reference/s3api/list-parts.html)
2108 // -
2109 // [upload-part](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html)
2110 // -
2111 // [upload-part-copy](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html)
2112 AWSS3UploadIDKey = attribute.Key("aws.s3.upload_id")
2113
2114 // AWSS3DeleteKey is the attribute Key conforming to the "aws.s3.delete"
2115 // semantic conventions. It represents the delete request container that
2116 // specifies the objects to be deleted.
2117 //
2118 // Type: string
2119 // RequirementLevel: Optional
2120 // Stability: stable
2121 // Examples:
2122 // 'Objects=[{Key=string,VersionID=string},{Key=string,VersionID=string}],Quiet=boolean'
2123 // Note: The `delete` attribute is only applicable to the
2124 // [delete-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html)
2125 // operation.
2126 // The `delete` attribute corresponds to the `--delete` parameter of the
2127 // [delete-objects operation within the S3
2128 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-objects.html).
2129 AWSS3DeleteKey = attribute.Key("aws.s3.delete")
2130
2131 // AWSS3PartNumberKey is the attribute Key conforming to the
2132 // "aws.s3.part_number" semantic conventions. It represents the part number
2133 // of the part being uploaded in a multipart-upload operation. This is a
2134 // positive integer between 1 and 10,000.
2135 //
2136 // Type: int
2137 // RequirementLevel: Optional
2138 // Stability: stable
2139 // Examples: 3456
2140 // Note: The `part_number` attribute is only applicable to the
2141 // [upload-part](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html)
2142 // and
2143 // [upload-part-copy](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html)
2144 // operations.
2145 // The `part_number` attribute corresponds to the `--part-number` parameter
2146 // of the
2147 // [upload-part operation within the S3
2148 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html).
2149 AWSS3PartNumberKey = attribute.Key("aws.s3.part_number")
2150 )
2151
2152 // AWSS3Bucket returns an attribute KeyValue conforming to the
2153 // "aws.s3.bucket" semantic conventions. It represents the S3 bucket name the
2154 // request refers to. Corresponds to the `--bucket` parameter of the [S3
2155 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html)
2156 // operations.
2157 func AWSS3Bucket(val string) attribute.KeyValue {
2158 return AWSS3BucketKey.String(val)
2159 }
2160
2161 // AWSS3Key returns an attribute KeyValue conforming to the "aws.s3.key"
2162 // semantic conventions. It represents the S3 object key the request refers to.
2163 // Corresponds to the `--key` parameter of the [S3
2164 // API](https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html)
2165 // operations.
2166 func AWSS3Key(val string) attribute.KeyValue {
2167 return AWSS3KeyKey.String(val)
2168 }
2169
2170 // AWSS3CopySource returns an attribute KeyValue conforming to the
2171 // "aws.s3.copy_source" semantic conventions. It represents the source object
2172 // (in the form `bucket`/`key`) for the copy operation.
2173 func AWSS3CopySource(val string) attribute.KeyValue {
2174 return AWSS3CopySourceKey.String(val)
2175 }
2176
2177 // AWSS3UploadID returns an attribute KeyValue conforming to the
2178 // "aws.s3.upload_id" semantic conventions. It represents the upload ID that
2179 // identifies the multipart upload.
2180 func AWSS3UploadID(val string) attribute.KeyValue {
2181 return AWSS3UploadIDKey.String(val)
2182 }
2183
2184 // AWSS3Delete returns an attribute KeyValue conforming to the
2185 // "aws.s3.delete" semantic conventions. It represents the delete request
2186 // container that specifies the objects to be deleted.
2187 func AWSS3Delete(val string) attribute.KeyValue {
2188 return AWSS3DeleteKey.String(val)
2189 }
2190
2191 // AWSS3PartNumber returns an attribute KeyValue conforming to the
2192 // "aws.s3.part_number" semantic conventions. It represents the part number of
2193 // the part being uploaded in a multipart-upload operation. This is a positive
2194 // integer between 1 and 10,000.
2195 func AWSS3PartNumber(val int) attribute.KeyValue {
2196 return AWSS3PartNumberKey.Int(val)
2197 }
2198
2199 // Semantic conventions to apply when instrumenting the GraphQL implementation.
2200 // They map GraphQL operations to attributes on a Span.
2201 const (
2202 // GraphqlOperationNameKey is the attribute Key conforming to the
2203 // "graphql.operation.name" semantic conventions. It represents the name of
2204 // the operation being executed.
2205 //
2206 // Type: string
2207 // RequirementLevel: Optional
2208 // Stability: stable
2209 // Examples: 'findBookByID'
2210 GraphqlOperationNameKey = attribute.Key("graphql.operation.name")
2211
2212 // GraphqlOperationTypeKey is the attribute Key conforming to the
2213 // "graphql.operation.type" semantic conventions. It represents the type of
2214 // the operation being executed.
2215 //
2216 // Type: Enum
2217 // RequirementLevel: Optional
2218 // Stability: stable
2219 // Examples: 'query', 'mutation', 'subscription'
2220 GraphqlOperationTypeKey = attribute.Key("graphql.operation.type")
2221
2222 // GraphqlDocumentKey is the attribute Key conforming to the
2223 // "graphql.document" semantic conventions. It represents the GraphQL
2224 // document being executed.
2225 //
2226 // Type: string
2227 // RequirementLevel: Optional
2228 // Stability: stable
2229 // Examples: 'query findBookByID { bookByID(id: ?) { name } }'
2230 // Note: The value may be sanitized to exclude sensitive information.
2231 GraphqlDocumentKey = attribute.Key("graphql.document")
2232 )
2233
2234 var (
2235 // GraphQL query
2236 GraphqlOperationTypeQuery = GraphqlOperationTypeKey.String("query")
2237 // GraphQL mutation
2238 GraphqlOperationTypeMutation = GraphqlOperationTypeKey.String("mutation")
2239 // GraphQL subscription
2240 GraphqlOperationTypeSubscription = GraphqlOperationTypeKey.String("subscription")
2241 )
2242
2243 // GraphqlOperationName returns an attribute KeyValue conforming to the
2244 // "graphql.operation.name" semantic conventions. It represents the name of the
2245 // operation being executed.
2246 func GraphqlOperationName(val string) attribute.KeyValue {
2247 return GraphqlOperationNameKey.String(val)
2248 }
2249
2250 // GraphqlDocument returns an attribute KeyValue conforming to the
2251 // "graphql.document" semantic conventions. It represents the GraphQL document
2252 // being executed.
2253 func GraphqlDocument(val string) attribute.KeyValue {
2254 return GraphqlDocumentKey.String(val)
2255 }
2256
2257 // General attributes used in messaging systems.
2258 const (
2259 // MessagingSystemKey is the attribute Key conforming to the
2260 // "messaging.system" semantic conventions. It represents a string
2261 // identifying the messaging system.
2262 //
2263 // Type: string
2264 // RequirementLevel: Required
2265 // Stability: stable
2266 // Examples: 'kafka', 'rabbitmq', 'rocketmq', 'activemq', 'AmazonSQS'
2267 MessagingSystemKey = attribute.Key("messaging.system")
2268
2269 // MessagingOperationKey is the attribute Key conforming to the
2270 // "messaging.operation" semantic conventions. It represents a string
2271 // identifying the kind of messaging operation as defined in the [Operation
2272 // names](#operation-names) section above.
2273 //
2274 // Type: Enum
2275 // RequirementLevel: Required
2276 // Stability: stable
2277 // Note: If a custom value is used, it MUST be of low cardinality.
2278 MessagingOperationKey = attribute.Key("messaging.operation")
2279
2280 // MessagingBatchMessageCountKey is the attribute Key conforming to the
2281 // "messaging.batch.message_count" semantic conventions. It represents the
2282 // number of messages sent, received, or processed in the scope of the
2283 // batching operation.
2284 //
2285 // Type: int
2286 // RequirementLevel: ConditionallyRequired (If the span describes an
2287 // operation on a batch of messages.)
2288 // Stability: stable
2289 // Examples: 0, 1, 2
2290 // Note: Instrumentations SHOULD NOT set `messaging.batch.message_count` on
2291 // spans that operate with a single message. When a messaging client
2292 // library supports both batch and single-message API for the same
2293 // operation, instrumentations SHOULD use `messaging.batch.message_count`
2294 // for batching APIs and SHOULD NOT use it for single-message APIs.
2295 MessagingBatchMessageCountKey = attribute.Key("messaging.batch.message_count")
2296 )
2297
2298 var (
2299 // publish
2300 MessagingOperationPublish = MessagingOperationKey.String("publish")
2301 // receive
2302 MessagingOperationReceive = MessagingOperationKey.String("receive")
2303 // process
2304 MessagingOperationProcess = MessagingOperationKey.String("process")
2305 )
2306
2307 // MessagingSystem returns an attribute KeyValue conforming to the
2308 // "messaging.system" semantic conventions. It represents a string identifying
2309 // the messaging system.
2310 func MessagingSystem(val string) attribute.KeyValue {
2311 return MessagingSystemKey.String(val)
2312 }
2313
2314 // MessagingBatchMessageCount returns an attribute KeyValue conforming to
2315 // the "messaging.batch.message_count" semantic conventions. It represents the
2316 // number of messages sent, received, or processed in the scope of the batching
2317 // operation.
2318 func MessagingBatchMessageCount(val int) attribute.KeyValue {
2319 return MessagingBatchMessageCountKey.Int(val)
2320 }
2321
2322 // Semantic convention for a consumer of messages received from a messaging
2323 // system
2324 const (
2325 // MessagingConsumerIDKey is the attribute Key conforming to the
2326 // "messaging.consumer.id" semantic conventions. It represents the
2327 // identifier for the consumer receiving a message. For Kafka, set it to
2328 // `{messaging.kafka.consumer.group} - {messaging.kafka.client_id}`, if
2329 // both are present, or only `messaging.kafka.consumer.group`. For brokers,
2330 // such as RabbitMQ and Artemis, set it to the `client_id` of the client
2331 // consuming the message.
2332 //
2333 // Type: string
2334 // RequirementLevel: Optional
2335 // Stability: stable
2336 // Examples: 'mygroup - client-6'
2337 MessagingConsumerIDKey = attribute.Key("messaging.consumer.id")
2338 )
2339
2340 // MessagingConsumerID returns an attribute KeyValue conforming to the
2341 // "messaging.consumer.id" semantic conventions. It represents the identifier
2342 // for the consumer receiving a message. For Kafka, set it to
2343 // `{messaging.kafka.consumer.group} - {messaging.kafka.client_id}`, if both
2344 // are present, or only `messaging.kafka.consumer.group`. For brokers, such as
2345 // RabbitMQ and Artemis, set it to the `client_id` of the client consuming the
2346 // message.
2347 func MessagingConsumerID(val string) attribute.KeyValue {
2348 return MessagingConsumerIDKey.String(val)
2349 }
2350
2351 // Semantic conventions for remote procedure calls.
2352 const (
2353 // RPCSystemKey is the attribute Key conforming to the "rpc.system"
2354 // semantic conventions. It represents a string identifying the remoting
2355 // system. See below for a list of well-known identifiers.
2356 //
2357 // Type: Enum
2358 // RequirementLevel: Required
2359 // Stability: stable
2360 RPCSystemKey = attribute.Key("rpc.system")
2361
2362 // RPCServiceKey is the attribute Key conforming to the "rpc.service"
2363 // semantic conventions. It represents the full (logical) name of the
2364 // service being called, including its package name, if applicable.
2365 //
2366 // Type: string
2367 // RequirementLevel: Recommended
2368 // Stability: stable
2369 // Examples: 'myservice.EchoService'
2370 // Note: This is the logical name of the service from the RPC interface
2371 // perspective, which can be different from the name of any implementing
2372 // class. The `code.namespace` attribute may be used to store the latter
2373 // (despite the attribute name, it may include a class name; e.g., class
2374 // with method actually executing the call on the server side, RPC client
2375 // stub class on the client side).
2376 RPCServiceKey = attribute.Key("rpc.service")
2377
2378 // RPCMethodKey is the attribute Key conforming to the "rpc.method"
2379 // semantic conventions. It represents the name of the (logical) method
2380 // being called, must be equal to the $method part in the span name.
2381 //
2382 // Type: string
2383 // RequirementLevel: Recommended
2384 // Stability: stable
2385 // Examples: 'exampleMethod'
2386 // Note: This is the logical name of the method from the RPC interface
2387 // perspective, which can be different from the name of any implementing
2388 // method/function. The `code.function` attribute may be used to store the
2389 // latter (e.g., method actually executing the call on the server side, RPC
2390 // client stub method on the client side).
2391 RPCMethodKey = attribute.Key("rpc.method")
2392 )
2393
2394 var (
2395 // gRPC
2396 RPCSystemGRPC = RPCSystemKey.String("grpc")
2397 // Java RMI
2398 RPCSystemJavaRmi = RPCSystemKey.String("java_rmi")
2399 // .NET WCF
2400 RPCSystemDotnetWcf = RPCSystemKey.String("dotnet_wcf")
2401 // Apache Dubbo
2402 RPCSystemApacheDubbo = RPCSystemKey.String("apache_dubbo")
2403 // Connect RPC
2404 RPCSystemConnectRPC = RPCSystemKey.String("connect_rpc")
2405 )
2406
2407 // RPCService returns an attribute KeyValue conforming to the "rpc.service"
2408 // semantic conventions. It represents the full (logical) name of the service
2409 // being called, including its package name, if applicable.
2410 func RPCService(val string) attribute.KeyValue {
2411 return RPCServiceKey.String(val)
2412 }
2413
2414 // RPCMethod returns an attribute KeyValue conforming to the "rpc.method"
2415 // semantic conventions. It represents the name of the (logical) method being
2416 // called, must be equal to the $method part in the span name.
2417 func RPCMethod(val string) attribute.KeyValue {
2418 return RPCMethodKey.String(val)
2419 }
2420
2421 // Tech-specific attributes for gRPC.
2422 const (
2423 // RPCGRPCStatusCodeKey is the attribute Key conforming to the
2424 // "rpc.grpc.status_code" semantic conventions. It represents the [numeric
2425 // status
2426 // code](https://github.com/grpc/grpc/blob/v1.33.2/doc/statuscodes.md) of
2427 // the gRPC request.
2428 //
2429 // Type: Enum
2430 // RequirementLevel: Required
2431 // Stability: stable
2432 RPCGRPCStatusCodeKey = attribute.Key("rpc.grpc.status_code")
2433 )
2434
2435 var (
2436 // OK
2437 RPCGRPCStatusCodeOk = RPCGRPCStatusCodeKey.Int(0)
2438 // CANCELLED
2439 RPCGRPCStatusCodeCancelled = RPCGRPCStatusCodeKey.Int(1)
2440 // UNKNOWN
2441 RPCGRPCStatusCodeUnknown = RPCGRPCStatusCodeKey.Int(2)
2442 // INVALID_ARGUMENT
2443 RPCGRPCStatusCodeInvalidArgument = RPCGRPCStatusCodeKey.Int(3)
2444 // DEADLINE_EXCEEDED
2445 RPCGRPCStatusCodeDeadlineExceeded = RPCGRPCStatusCodeKey.Int(4)
2446 // NOT_FOUND
2447 RPCGRPCStatusCodeNotFound = RPCGRPCStatusCodeKey.Int(5)
2448 // ALREADY_EXISTS
2449 RPCGRPCStatusCodeAlreadyExists = RPCGRPCStatusCodeKey.Int(6)
2450 // PERMISSION_DENIED
2451 RPCGRPCStatusCodePermissionDenied = RPCGRPCStatusCodeKey.Int(7)
2452 // RESOURCE_EXHAUSTED
2453 RPCGRPCStatusCodeResourceExhausted = RPCGRPCStatusCodeKey.Int(8)
2454 // FAILED_PRECONDITION
2455 RPCGRPCStatusCodeFailedPrecondition = RPCGRPCStatusCodeKey.Int(9)
2456 // ABORTED
2457 RPCGRPCStatusCodeAborted = RPCGRPCStatusCodeKey.Int(10)
2458 // OUT_OF_RANGE
2459 RPCGRPCStatusCodeOutOfRange = RPCGRPCStatusCodeKey.Int(11)
2460 // UNIMPLEMENTED
2461 RPCGRPCStatusCodeUnimplemented = RPCGRPCStatusCodeKey.Int(12)
2462 // INTERNAL
2463 RPCGRPCStatusCodeInternal = RPCGRPCStatusCodeKey.Int(13)
2464 // UNAVAILABLE
2465 RPCGRPCStatusCodeUnavailable = RPCGRPCStatusCodeKey.Int(14)
2466 // DATA_LOSS
2467 RPCGRPCStatusCodeDataLoss = RPCGRPCStatusCodeKey.Int(15)
2468 // UNAUTHENTICATED
2469 RPCGRPCStatusCodeUnauthenticated = RPCGRPCStatusCodeKey.Int(16)
2470 )
2471
2472 // Tech-specific attributes for [JSON RPC](https://www.jsonrpc.org/).
2473 const (
2474 // RPCJsonrpcVersionKey is the attribute Key conforming to the
2475 // "rpc.jsonrpc.version" semantic conventions. It represents the protocol
2476 // version as in `jsonrpc` property of request/response. Since JSON-RPC 1.0
2477 // does not specify this, the value can be omitted.
2478 //
2479 // Type: string
2480 // RequirementLevel: ConditionallyRequired (If other than the default
2481 // version (`1.0`))
2482 // Stability: stable
2483 // Examples: '2.0', '1.0'
2484 RPCJsonrpcVersionKey = attribute.Key("rpc.jsonrpc.version")
2485
2486 // RPCJsonrpcRequestIDKey is the attribute Key conforming to the
2487 // "rpc.jsonrpc.request_id" semantic conventions. It represents the `id`
2488 // property of request or response. Since protocol allows id to be int,
2489 // string, `null` or missing (for notifications), value is expected to be
2490 // cast to string for simplicity. Use empty string in case of `null` value.
2491 // Omit entirely if this is a notification.
2492 //
2493 // Type: string
2494 // RequirementLevel: Optional
2495 // Stability: stable
2496 // Examples: '10', 'request-7', ''
2497 RPCJsonrpcRequestIDKey = attribute.Key("rpc.jsonrpc.request_id")
2498
2499 // RPCJsonrpcErrorCodeKey is the attribute Key conforming to the
2500 // "rpc.jsonrpc.error_code" semantic conventions. It represents the
2501 // `error.code` property of response if it is an error response.
2502 //
2503 // Type: int
2504 // RequirementLevel: ConditionallyRequired (If response is not successful.)
2505 // Stability: stable
2506 // Examples: -32700, 100
2507 RPCJsonrpcErrorCodeKey = attribute.Key("rpc.jsonrpc.error_code")
2508
2509 // RPCJsonrpcErrorMessageKey is the attribute Key conforming to the
2510 // "rpc.jsonrpc.error_message" semantic conventions. It represents the
2511 // `error.message` property of response if it is an error response.
2512 //
2513 // Type: string
2514 // RequirementLevel: Optional
2515 // Stability: stable
2516 // Examples: 'Parse error', 'User already exists'
2517 RPCJsonrpcErrorMessageKey = attribute.Key("rpc.jsonrpc.error_message")
2518 )
2519
2520 // RPCJsonrpcVersion returns an attribute KeyValue conforming to the
2521 // "rpc.jsonrpc.version" semantic conventions. It represents the protocol
2522 // version as in `jsonrpc` property of request/response. Since JSON-RPC 1.0
2523 // does not specify this, the value can be omitted.
2524 func RPCJsonrpcVersion(val string) attribute.KeyValue {
2525 return RPCJsonrpcVersionKey.String(val)
2526 }
2527
2528 // RPCJsonrpcRequestID returns an attribute KeyValue conforming to the
2529 // "rpc.jsonrpc.request_id" semantic conventions. It represents the `id`
2530 // property of request or response. Since protocol allows id to be int, string,
2531 // `null` or missing (for notifications), value is expected to be cast to
2532 // string for simplicity. Use empty string in case of `null` value. Omit
2533 // entirely if this is a notification.
2534 func RPCJsonrpcRequestID(val string) attribute.KeyValue {
2535 return RPCJsonrpcRequestIDKey.String(val)
2536 }
2537
2538 // RPCJsonrpcErrorCode returns an attribute KeyValue conforming to the
2539 // "rpc.jsonrpc.error_code" semantic conventions. It represents the
2540 // `error.code` property of response if it is an error response.
2541 func RPCJsonrpcErrorCode(val int) attribute.KeyValue {
2542 return RPCJsonrpcErrorCodeKey.Int(val)
2543 }
2544
2545 // RPCJsonrpcErrorMessage returns an attribute KeyValue conforming to the
2546 // "rpc.jsonrpc.error_message" semantic conventions. It represents the
2547 // `error.message` property of response if it is an error response.
2548 func RPCJsonrpcErrorMessage(val string) attribute.KeyValue {
2549 return RPCJsonrpcErrorMessageKey.String(val)
2550 }
2551
2552 // Tech-specific attributes for Connect RPC.
2553 const (
2554 // RPCConnectRPCErrorCodeKey is the attribute Key conforming to the
2555 // "rpc.connect_rpc.error_code" semantic conventions. It represents the
2556 // [error codes](https://connect.build/docs/protocol/#error-codes) of the
2557 // Connect request. Error codes are always string values.
2558 //
2559 // Type: Enum
2560 // RequirementLevel: ConditionallyRequired (If response is not successful
2561 // and if error code available.)
2562 // Stability: stable
2563 RPCConnectRPCErrorCodeKey = attribute.Key("rpc.connect_rpc.error_code")
2564 )
2565
2566 var (
2567 // cancelled
2568 RPCConnectRPCErrorCodeCancelled = RPCConnectRPCErrorCodeKey.String("cancelled")
2569 // unknown
2570 RPCConnectRPCErrorCodeUnknown = RPCConnectRPCErrorCodeKey.String("unknown")
2571 // invalid_argument
2572 RPCConnectRPCErrorCodeInvalidArgument = RPCConnectRPCErrorCodeKey.String("invalid_argument")
2573 // deadline_exceeded
2574 RPCConnectRPCErrorCodeDeadlineExceeded = RPCConnectRPCErrorCodeKey.String("deadline_exceeded")
2575 // not_found
2576 RPCConnectRPCErrorCodeNotFound = RPCConnectRPCErrorCodeKey.String("not_found")
2577 // already_exists
2578 RPCConnectRPCErrorCodeAlreadyExists = RPCConnectRPCErrorCodeKey.String("already_exists")
2579 // permission_denied
2580 RPCConnectRPCErrorCodePermissionDenied = RPCConnectRPCErrorCodeKey.String("permission_denied")
2581 // resource_exhausted
2582 RPCConnectRPCErrorCodeResourceExhausted = RPCConnectRPCErrorCodeKey.String("resource_exhausted")
2583 // failed_precondition
2584 RPCConnectRPCErrorCodeFailedPrecondition = RPCConnectRPCErrorCodeKey.String("failed_precondition")
2585 // aborted
2586 RPCConnectRPCErrorCodeAborted = RPCConnectRPCErrorCodeKey.String("aborted")
2587 // out_of_range
2588 RPCConnectRPCErrorCodeOutOfRange = RPCConnectRPCErrorCodeKey.String("out_of_range")
2589 // unimplemented
2590 RPCConnectRPCErrorCodeUnimplemented = RPCConnectRPCErrorCodeKey.String("unimplemented")
2591 // internal
2592 RPCConnectRPCErrorCodeInternal = RPCConnectRPCErrorCodeKey.String("internal")
2593 // unavailable
2594 RPCConnectRPCErrorCodeUnavailable = RPCConnectRPCErrorCodeKey.String("unavailable")
2595 // data_loss
2596 RPCConnectRPCErrorCodeDataLoss = RPCConnectRPCErrorCodeKey.String("data_loss")
2597 // unauthenticated
2598 RPCConnectRPCErrorCodeUnauthenticated = RPCConnectRPCErrorCodeKey.String("unauthenticated")
2599 )
2600