diff --git a/semantic-conventions/src/opentelemetry/semconv/templating/markdown/__init__.py b/semantic-conventions/src/opentelemetry/semconv/templating/markdown/__init__.py index 9871662e..d4b584ae 100644 --- a/semantic-conventions/src/opentelemetry/semconv/templating/markdown/__init__.py +++ b/semantic-conventions/src/opentelemetry/semconv/templating/markdown/__init__.py @@ -172,11 +172,11 @@ def derive_requirement_level(self, attribute: SemanticAttribute): required = "Required" elif attribute.requirement_level == RequirementLevel.CONDITIONALLY_REQUIRED: if len(attribute.requirement_level_msg) < self.options.break_count: - required = "Conditionally Required: " + attribute.requirement_level_msg + required = "Conditionally Required " + attribute.requirement_level_msg else: # We put the condition in the notes after the table self.render_ctx.add_note(attribute.requirement_level_msg) - required = f"Conditionally Required: [{ len(self.render_ctx.notes)}]" + required = f"Conditionally Required [{ len(self.render_ctx.notes)}]" elif attribute.requirement_level == RequirementLevel.OPT_IN: required = "Opt-In" else: # attribute.requirement_level == Required.RECOMMENDED or None @@ -190,11 +190,11 @@ def derive_requirement_level(self, attribute: SemanticAttribute): if not attribute.requirement_level_msg: required = "Recommended" elif len(attribute.requirement_level_msg) < self.options.break_count: - required = "Recommended: " + attribute.requirement_level_msg + required = "Recommended " + attribute.requirement_level_msg else: # We put the condition in the notes after the table self.render_ctx.add_note(attribute.requirement_level_msg) - required = f"Recommended: [{len(self.render_ctx.notes)}]" + required = f"Recommended [{len(self.render_ctx.notes)}]" return required def write_table_header(self, output: io.StringIO): @@ -322,8 +322,8 @@ def to_markdown_enum(self, output: io.StringIO): if enum.custom_values: output.write( "has the following list of well-known values." - + " If one of them applies, then the respective value MUST be used," - + " otherwise a custom value MAY be used." + + " If one of them applies, then the respective value MUST be used;" + + " otherwise, a custom value MAY be used." ) else: output.write("MUST be one of the following:") diff --git a/semantic-conventions/src/tests/data/markdown/attribute_group/expected.md b/semantic-conventions/src/tests/data/markdown/attribute_group/expected.md index 82b4e34e..9e0c9bac 100644 --- a/semantic-conventions/src/tests/data/markdown/attribute_group/expected.md +++ b/semantic-conventions/src/tests/data/markdown/attribute_group/expected.md @@ -3,6 +3,6 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `foo.bar` | string | Attribute 1 | `baz` | Recommended: if available | -| `foo.qux` | int | Attribute 2 | `42` | Conditionally Required: if available | +| `foo.bar` | string | Attribute 1 | `baz` | Recommended if available | +| `foo.qux` | int | Attribute 2 | `42` | Conditionally Required if available | diff --git a/semantic-conventions/src/tests/data/markdown/deprecated/expected.md b/semantic-conventions/src/tests/data/markdown/deprecated/expected.md index 988ac7c8..f1ad831b 100644 --- a/semantic-conventions/src/tests/data/markdown/deprecated/expected.md +++ b/semantic-conventions/src/tests/data/markdown/deprecated/expected.md @@ -8,7 +8,7 @@ | `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Recommended | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | Recommended | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent | | `http.status_text` | string | **Deprecated: Use attribute `status_description` instead.**
[HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | Recommended | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | Recommended | @@ -16,7 +16,7 @@ **[1]:** If `net.transport` is not specified, it can be assumed to be `IP.TCP` except if `http.flavor` is `QUIC`, in which case `IP.UDP` is assumed. -`http.flavor` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`http.flavor` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| diff --git a/semantic-conventions/src/tests/data/markdown/deprecated/input.md b/semantic-conventions/src/tests/data/markdown/deprecated/input.md index 06fd8ea2..8d572517 100644 --- a/semantic-conventions/src/tests/data/markdown/deprecated/input.md +++ b/semantic-conventions/src/tests/data/markdown/deprecated/input.md @@ -10,7 +10,7 @@ | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | No | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/empty/expected.md b/semantic-conventions/src/tests/data/markdown/empty/expected.md index e7874380..6cec830e 100644 --- a/semantic-conventions/src/tests/data/markdown/empty/expected.md +++ b/semantic-conventions/src/tests/data/markdown/empty/expected.md @@ -77,7 +77,7 @@ Note that the items marked with [1] are different from the mapping defined in th | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | Opt-In | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/empty/input.md b/semantic-conventions/src/tests/data/markdown/empty/input.md index e7874380..6cec830e 100644 --- a/semantic-conventions/src/tests/data/markdown/empty/input.md +++ b/semantic-conventions/src/tests/data/markdown/empty/input.md @@ -77,7 +77,7 @@ Note that the items marked with [1] are different from the mapping defined in th | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | Opt-In | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/extend_constraint/expected.md b/semantic-conventions/src/tests/data/markdown/extend_constraint/expected.md index 66372a62..d2a10d37 100644 --- a/semantic-conventions/src/tests/data/markdown/extend_constraint/expected.md +++ b/semantic-conventions/src/tests/data/markdown/extend_constraint/expected.md @@ -41,8 +41,8 @@ Some database systems may allow a connection to switch to a different `db.user`, | `db.user` | string | Username for accessing the database. | `readonly_user`; `reporting_user` | Recommended | | `net.peer.ip` | string | Remote address of the peer (dotted decimal for IPv4 or [RFC5952](https://tools.ietf.org/html/rfc5952) for IPv6) | `127.0.0.1` | See below | | `net.peer.name` | string | Remote hostname or similar, see note below. | `example.com` | See below | -| `net.peer.port` | int | Remote port number. | `80`; `8080`; `443` | Conditionally Required: [2] | -| `net.transport` | string | Transport protocol used. See note below. | `IP.TCP` | Conditionally Required: [3] | +| `net.peer.port` | int | Remote port number. | `80`; `8080`; `443` | Conditionally Required [2] | +| `net.transport` | string | Transport protocol used. See note below. | `IP.TCP` | Conditionally Required [3] | **[1]:** It is recommended to remove embedded credentials. @@ -55,7 +55,7 @@ Some database systems may allow a connection to switch to a different `db.user`, * `net.peer.name` * `net.peer.ip` -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| @@ -141,9 +141,9 @@ Usually only one `db.name` will be used per connection though. | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `db.name` | string | If no tech-specific attribute is defined, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [1] | `customers`; `main` | Conditionally Required: [2] | -| `db.operation` | string | The name of the operation being executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. [3] | `findAndModify`; `HMSET` | Conditionally Required: if `db.statement` is not applicable. | -| `db.statement` | string | The database statement being executed. [4] | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | Conditionally Required: if applicable. | +| `db.name` | string | If no tech-specific attribute is defined, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [1] | `customers`; `main` | Conditionally Required [2] | +| `db.operation` | string | The name of the operation being executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. [3] | `findAndModify`; `HMSET` | Conditionally Required if `db.statement` is not applicable. | +| `db.statement` | string | The database statement being executed. [4] | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | Conditionally Required if applicable. | **[1]:** In some SQL databases, the database name to be used is called "schema name". @@ -187,7 +187,7 @@ For example, when retrieving a document, `db.operation` would be set to (literal | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `db.redis.database_index` | int | The index of the database being accessed as used in the [`SELECT` command](https://redis.io/commands/select), provided as an integer. To be used instead of the generic `db.name` attribute. | `0`; `1`; `15` | Conditionally Required: if other than the default database (`0`). | +| `db.redis.database_index` | int | The index of the database being accessed as used in the [`SELECT` command](https://redis.io/commands/select), provided as an integer. To be used instead of the generic `db.name` attribute. | `0`; `1`; `15` | Conditionally Required if other than the default database (`0`). | #### MongoDB diff --git a/semantic-conventions/src/tests/data/markdown/extend_constraint/input.md b/semantic-conventions/src/tests/data/markdown/extend_constraint/input.md index f979a83a..7800e433 100644 --- a/semantic-conventions/src/tests/data/markdown/extend_constraint/input.md +++ b/semantic-conventions/src/tests/data/markdown/extend_constraint/input.md @@ -41,12 +41,12 @@ Some database systems may allow a connection to switch to a different `db.user`, | `db.user` | string | Username for accessing the database. | `readonly_user`
`reporting_user` | Recommended | | `net.peer.ip` | string | Remote address of the peer (dotted decimal for IPv4 or [RFC5952](https://tools.ietf.org/html/rfc5952) for IPv6) | `127.0.0.1` | Conditional
See below. | | `net.peer.name` | string | Remote hostname or similar, see note below. | `example.com` | Conditional
See below. | -| `net.peer.port` | int | Remote port number. | `80`
`8080`
`443` | Conditionally Required: [2] | -| `net.transport` | string enum | Transport protocol used. See note below. | `IP.TCP` | Conditionally Required: [3] | +| `net.peer.port` | int | Remote port number. | `80`
`8080`
`443` | Conditionally Required [2] | +| `net.transport` | string enum | Transport protocol used. See note below. | `IP.TCP` | Conditionally Required [3] | **[1]:** It is recommended to remove embedded credentials. -**[2]:** Conditionally Required: if using a port other than the default port for this DBMS. +**[2]:** Conditionally Required if using a port other than the default port for this DBMS. **[3]:** Recommended in general, required for in-process databases (`"inproc"`). @@ -55,7 +55,7 @@ At least one of the following is required: * `net.peer.name` * `net.peer.ip` -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| @@ -141,9 +141,9 @@ Usually only one `db.name` will be used per connection though. | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `db.name` | string | If no tech-specific attribute is defined, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [1] | `customers`
`main` | Conditionally Required: [2] | -| `db.statement` | string | The database statement being executed. [3] | `SELECT * FROM wuser_table`
`SET mykey "WuValue"` | Conditional
Conditionally Required: if applicable. | -| `db.operation` | string | The name of the operation being executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. [4] | `findAndModify`
`HMSET` | Conditional
Conditionally Required: if `db.statement` is not applicable. | +| `db.name` | string | If no tech-specific attribute is defined, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [1] | `customers`
`main` | Conditionally Required [2] | +| `db.statement` | string | The database statement being executed. [3] | `SELECT * FROM wuser_table`
`SET mykey "WuValue"` | Conditional
Conditionally Required if applicable. | +| `db.operation` | string | The name of the operation being executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. [4] | `findAndModify`
`HMSET` | Conditional
Conditionally Required if `db.statement` is not applicable. | **[1]:** In some SQL databases, the database name to be used is called "schema name". diff --git a/semantic-conventions/src/tests/data/markdown/include/expected.md b/semantic-conventions/src/tests/data/markdown/include/expected.md index d29c6fff..97e66cd3 100644 --- a/semantic-conventions/src/tests/data/markdown/include/expected.md +++ b/semantic-conventions/src/tests/data/markdown/include/expected.md @@ -7,11 +7,11 @@ | `faas.trigger` | string | Type of the trigger on which the function is executed. | `datasource` | Required | | `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | See below | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | -| `http.recommended_attribute` | string | brief | `foo` | Recommended: short note | -| `http.recommended_attribute_long_note` | string | brief | `bar` | Recommended: [1] | +| `http.recommended_attribute` | string | brief | `foo` | Recommended short note | +| `http.recommended_attribute_long_note` | string | brief | `bar` | Recommended [1] | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | See below | -| [`http.server_name`](input_http.md) | string | The primary server name of the matched virtual host. [2] | `example.com` | Conditionally Required: [3] | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent | +| [`http.server_name`](input_http.md) | string | The primary server name of the matched virtual host. [2] | `example.com` | Conditionally Required [3] | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent | | `http.status_text` | string | [HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | See below | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | See below | diff --git a/semantic-conventions/src/tests/data/markdown/metrics_tables/expected.md b/semantic-conventions/src/tests/data/markdown/metrics_tables/expected.md index fccac598..933951ec 100644 --- a/semantic-conventions/src/tests/data/markdown/metrics_tables/expected.md +++ b/semantic-conventions/src/tests/data/markdown/metrics_tables/expected.md @@ -14,7 +14,7 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent. | **`foo.active_eggs`** @@ -28,7 +28,7 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `bar.egg.type` | string | Type of egg. [1] | `chicken`; `emu`; `dragon` | Conditionally Required: if available to instrumentation. | +| `bar.egg.type` | string | Type of egg. [1] | `chicken`; `emu`; `dragon` | Conditionally Required if available to instrumentation. | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Opt-In | **[1]:** Some notes on attribute diff --git a/semantic-conventions/src/tests/data/markdown/missing_end_tag/input.md b/semantic-conventions/src/tests/data/markdown/missing_end_tag/input.md index 738dbd13..d412ae6b 100644 --- a/semantic-conventions/src/tests/data/markdown/missing_end_tag/input.md +++ b/semantic-conventions/src/tests/data/markdown/missing_end_tag/input.md @@ -10,7 +10,7 @@ | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | Opt-In | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/multiple/expected.md b/semantic-conventions/src/tests/data/markdown/multiple/expected.md index 24b84332..78dfdd8e 100644 --- a/semantic-conventions/src/tests/data/markdown/multiple/expected.md +++ b/semantic-conventions/src/tests/data/markdown/multiple/expected.md @@ -7,7 +7,7 @@ | `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Recommended | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | Recommended | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent | | `http.status_text` | string | [HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | Recommended | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | Recommended | @@ -20,7 +20,7 @@ | `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Recommended | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | Recommended | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent | | `http.status_text` | string | [HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | Recommended | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/multiple/input.md b/semantic-conventions/src/tests/data/markdown/multiple/input.md index 5364018f..f002e673 100644 --- a/semantic-conventions/src/tests/data/markdown/multiple/input.md +++ b/semantic-conventions/src/tests/data/markdown/multiple/input.md @@ -10,7 +10,7 @@ | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | No | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/multiple_enum/expected.md b/semantic-conventions/src/tests/data/markdown/multiple_enum/expected.md index 96781fc4..00a72ee2 100644 --- a/semantic-conventions/src/tests/data/markdown/multiple_enum/expected.md +++ b/semantic-conventions/src/tests/data/markdown/multiple_enum/expected.md @@ -18,14 +18,14 @@ | `net.peer.port` | int | Remote port number. | `80`; `8080`; `443` | Recommended | | `net.transport` | string | Transport protocol used. See note below. | `IP.TCP` | Recommended | -`net.host.connection.subtype` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`net.host.connection.subtype` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| | `1G` | 1G | | `2G` | 2G | -`net.host.connection.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`net.host.connection.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| diff --git a/semantic-conventions/src/tests/data/markdown/parameter_empty/http.md b/semantic-conventions/src/tests/data/markdown/parameter_empty/http.md index e3d08f12..615e174a 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_empty/http.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_empty/http.md @@ -3,7 +3,7 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `http.server_name` | String | The primary server name of the matched virtual host. [1] | `example.com` | Conditionally Required: [2] | +| `http.server_name` | String | The primary server name of the matched virtual host. [1] | `example.com` | Conditionally Required [2] | | `http.route` | String | The matched route (path template). | `/users/:userID?` | Recommended | | `http.client_ip` | String | The IP address of the original client behind all proxies, if known (e.g. from [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)). [3] | `83.164.160.102` | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/parameter_full/expected.md b/semantic-conventions/src/tests/data/markdown/parameter_full/expected.md index 1ff9a1c2..82470728 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_full/expected.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_full/expected.md @@ -6,12 +6,12 @@ | `faas.execution` | string | The execution id of the current function execution. | `af9d5aa4-a685-4c5f-a22b-444f80b3cc28` | Recommended | | `faas.trigger` | string | Type of the trigger on which the function is executed. | `datasource` | Required | | [`http.client_ip`](http.md) | string | The IP address of the original client behind all proxies, if known (e.g. from [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)). [1] | `83.164.160.102` | Recommended | -| `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Conditionally Required: | +| `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Conditionally Required | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | | [`http.route`](http.md) | string | The matched route (path template). | `/users/:userID?` | Recommended | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | See below | -| [`http.server_name`](http.md) | string | The primary server name of the matched virtual host. [2] | `example.com` | Conditionally Required: [3] | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent. | +| [`http.server_name`](http.md) | string | The primary server name of the matched virtual host. [2] | `example.com` | Conditionally Required [3] | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent. | | `http.status_text` | string | [HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | See below | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | See below | diff --git a/semantic-conventions/src/tests/data/markdown/parameter_full/http.md b/semantic-conventions/src/tests/data/markdown/parameter_full/http.md index eea49b57..90af8041 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_full/http.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_full/http.md @@ -3,7 +3,7 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `http.server_name` | String | The primary server name of the matched virtual host. [1] | `example.com` | Conditionally Required: [2] | +| `http.server_name` | String | The primary server name of the matched virtual host. [1] | `example.com` | Conditionally Required [2] | | `http.route` | String | The matched route (path template). | `/users/:userID?` | Recommended | | `http.client_ip` | String | The IP address of the original client behind all proxies, if known (e.g. from [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)). [3] | `83.164.160.102` | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/parameter_remove_constraint/expected.md b/semantic-conventions/src/tests/data/markdown/parameter_remove_constraint/expected.md index f37e496b..28bea588 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_remove_constraint/expected.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_remove_constraint/expected.md @@ -12,7 +12,7 @@ **[1]:** It is recommended to remove embedded credentials. -`db.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`db.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| diff --git a/semantic-conventions/src/tests/data/markdown/parameter_tag/expected.md b/semantic-conventions/src/tests/data/markdown/parameter_tag/expected.md index 9332a6f9..1d72cb61 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_tag/expected.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_tag/expected.md @@ -17,7 +17,7 @@ * `net.peer.name` * `net.peer.ip` -`db.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`db.type` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| diff --git a/semantic-conventions/src/tests/data/markdown/parameter_tag_empty/expected.md b/semantic-conventions/src/tests/data/markdown/parameter_tag_empty/expected.md index 59acab51..ee428495 100644 --- a/semantic-conventions/src/tests/data/markdown/parameter_tag_empty/expected.md +++ b/semantic-conventions/src/tests/data/markdown/parameter_tag_empty/expected.md @@ -3,12 +3,12 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `db.dbms` | string | An identifier for the DBMS (database management system) product | `mssql` | Conditionally Required: for `db.type="sql"` | +| `db.dbms` | string | An identifier for the DBMS (database management system) product | `mssql` | Conditionally Required for `db.type="sql"` | | `db.jdbc.driver_classname` | string | The fully-qualified class name of the JDBC driver used to connect. | `org.postgresql.Driver`; `com.microsoft.sqlserver.jdbc.SQLServerDriver` | Recommended | | `db.mssql.instance_name` | string | The Microsoft SQL Server [instance name](https://docs.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=sql-server-ver15) connecting to. This name is used to determine the port of a named instance. [1] | `MSSQLSERVER` | Recommended | -| `db.name` | string | If no tech-specific attribute is defined below, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [2] | `customers`; `master` | Conditionally Required: [3] | -| `db.operation` | string | The type of operation that is executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. While it would semantically make sense to set this, e.g., to a SQL keyword like `SELECT` or `INSERT`, it is not recommended to attempt any client-side parsing of `db.statement` just to get this property (the back end can do that if required). | `findAndModify` | Conditionally Required: if `db.statement` is not applicable. | -| `db.statement` | string | A database statement for the given database type. [4] | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | Conditionally Required: if applicable. | +| `db.name` | string | If no tech-specific attribute is defined below, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). [2] | `customers`; `master` | Conditionally Required [3] | +| `db.operation` | string | The type of operation that is executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`. While it would semantically make sense to set this, e.g., to a SQL keyword like `SELECT` or `INSERT`, it is not recommended to attempt any client-side parsing of `db.statement` just to get this property (the back end can do that if required). | `findAndModify` | Conditionally Required if `db.statement` is not applicable. | +| `db.statement` | string | A database statement for the given database type. [4] | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | Conditionally Required if applicable. | **[1]:** If setting a `db.mssql.instance_name`, `net.peer.port` is no longer required (but still recommended if non-standard). @@ -23,7 +23,7 @@ * `net.peer.name` * `net.peer.ip` -`db.dbms` has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used. +`db.dbms` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | |---|---| diff --git a/semantic-conventions/src/tests/data/markdown/ref/expected.md b/semantic-conventions/src/tests/data/markdown/ref/expected.md index 9f3a16e9..5fc64ee9 100644 --- a/semantic-conventions/src/tests/data/markdown/ref/expected.md +++ b/semantic-conventions/src/tests/data/markdown/ref/expected.md @@ -6,7 +6,7 @@ | [`net.peer.name`](input_general.md) | string | override brief. [1] | `example.com` | Opt-In | | [`net.peer.port`](input_general.md) | int | It describes the server port the client is connecting to | `80`; `8080`; `443` | Required | | [`net.sock.peer.addr`](input_general.md) | string | Remote socket peer address. | `127.0.0.1`; `/tmp/mysql.sock` | Required | -| [`net.sock.peer.port`](input_general.md) | int | Remote socket peer port. | `16456` | Conditionally Required: | +| [`net.sock.peer.port`](input_general.md) | int | Remote socket peer port. | `16456` | Conditionally Required | | `rpc.service` | string | The service name, must be equal to the $service part in the span name. | `EchoService` | Required | **[1]:** override note. diff --git a/semantic-conventions/src/tests/data/markdown/sampling_relevant/expected.md b/semantic-conventions/src/tests/data/markdown/sampling_relevant/expected.md index e3cb8b73..81163768 100644 --- a/semantic-conventions/src/tests/data/markdown/sampling_relevant/expected.md +++ b/semantic-conventions/src/tests/data/markdown/sampling_relevant/expected.md @@ -6,7 +6,7 @@ | `http.host` | string | . | `.` | Recommended | | `http.method` | string | . | `GET` | Required | | `http.scheme` | string | . | `http` | Recommended | -| `http.status_code` | int | . | | Conditionally Required: | +| `http.status_code` | int | . | | Conditionally Required | | `http.target` | string | . | `.` | Recommended | | `http.url` | string | . [1] | `.` | Recommended | | `http.user_agent` | string | . | `.` | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/single/expected.md b/semantic-conventions/src/tests/data/markdown/single/expected.md index f10e136d..9c132f08 100644 --- a/semantic-conventions/src/tests/data/markdown/single/expected.md +++ b/semantic-conventions/src/tests/data/markdown/single/expected.md @@ -4,10 +4,10 @@ | Attribute | Type | Description | Examples | Requirement Level | |---|---|---|---|---| -| `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Conditionally Required: | +| `http.host` | string | The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is empty or not present, this attribute should be the same. | `www.example.org` | Conditionally Required | | `http.method` | string | HTTP request method. | `GET`; `POST`; `HEAD` | Required | | `http.scheme` | string | The URI scheme identifying the used protocol. | `http`; `https` | Recommended | -| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required if and only if one was received/sent. | | `http.status_text` | string | [HTTP reason phrase](https://tools.ietf.org/html/rfc7230#section-3.1.2). | `OK` | Recommended | | `http.target` | string | The full request target as passed in a HTTP request line or equivalent. | `/path/12314/?q=ddds#123` | Recommended | | `http.url` | string | Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. | `https://www.foo.bar/search?q=OpenTelemetry#SemConv` | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/single/input.md b/semantic-conventions/src/tests/data/markdown/single/input.md index 06fd8ea2..8d572517 100644 --- a/semantic-conventions/src/tests/data/markdown/single/input.md +++ b/semantic-conventions/src/tests/data/markdown/single/input.md @@ -10,7 +10,7 @@ | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | No | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended | diff --git a/semantic-conventions/src/tests/data/markdown/wrong_semconv_id/input.md b/semantic-conventions/src/tests/data/markdown/wrong_semconv_id/input.md index f316463a..a749520c 100644 --- a/semantic-conventions/src/tests/data/markdown/wrong_semconv_id/input.md +++ b/semantic-conventions/src/tests/data/markdown/wrong_semconv_id/input.md @@ -10,7 +10,7 @@ | `http.target` | The full request target as passed in a [HTTP request line][] or equivalent, e.g. `"/path/12314/?q=ddds#123"`. | Defined later. | | `http.host` | The value of the [HTTP host header][]. When the header is empty or not present, this attribute should be the same. | Defined later. | | `http.scheme` | The URI scheme identifying the used protocol: `"http"` or `"https"` | Defined later. | -| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required: if and only if one was received/sent. | +| `http.status_code` | [HTTP response status code][]. E.g. `200` (integer) | Conditionally Required if and only if one was received/sent. | | `http.status_text` | [HTTP reason phrase][]. E.g. `"OK"` | Recommended | | `http.flavor` | Kind of HTTP protocol used: `"1.0"`, `"1.1"`, `"2"`, `"SPDY"` or `"QUIC"`. | No | | `http.user_agent` | Value of the HTTP [User-Agent][] header sent by the client. | Recommended |