add semantic conventions for heroku (#3075)

Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
This commit is contained in:
Antoine Toulme 2023-02-27 01:23:29 -08:00 committed by GitHub
parent a0691c65ed
commit 12481fef89
5 changed files with 60 additions and 0 deletions

View File

@ -21,6 +21,9 @@ groups:
- id: 'gcp'
value: 'gcp'
brief: 'Google Cloud Platform'
- id: 'heroku'
value: 'heroku'
brief: 'Heroku Platform as a Service'
- id: 'ibm_cloud'
value: 'ibm_cloud'
brief: 'IBM Cloud'

View File

@ -0,0 +1,25 @@
groups:
- id: heroku
prefix: heroku
type: resource
brief: >
Heroku dyno metadata
attributes:
- id: release.creation_timestamp
type: string
brief: >
Time and date the release was created
examples: [ '2022-10-23T18:00:42Z' ]
requirement_level: optional
- id: release.commit
type: string
brief: >
Commit hash for the current release
examples: [ 'e6134959463efd8966b20e75b913cafe3f5ec' ]
requirement_level: optional
- id: app.id
type: string
brief: >
Unique identifier for the application
examples: [ '2daa2797-e42b-4624-9322-ec3f968df4da' ]
requirement_level: optional

View File

@ -176,3 +176,4 @@ Valid cloud providers are:
- [Google Cloud Platform](https://cloud.google.com/) (`gcp`)
- [Microsoft Azure](https://azure.microsoft.com/) (`azure`)
- [Tencent Cloud](https://www.tencentcloud.com/) (`tencent_cloud`)
- [Heroku dyno](./cloud_provider/heroku.md)

View File

@ -29,6 +29,7 @@
| `aws` | Amazon Web Services |
| `azure` | Microsoft Azure |
| `gcp` | Google Cloud Platform |
| `heroku` | Heroku Platform as a Service |
| `ibm_cloud` | IBM Cloud |
| `tencent_cloud` | Tencent Cloud |

View File

@ -0,0 +1,30 @@
# Heroku
**Status**: [Experimental](../../../document-status.md)
**type:** `heroku`
**Description:** [Heroku dyno metadata]
<!-- semconv heroku -->
| Attribute | Type | Description | Examples | Requirement Level |
|---|---|---|---|---|
| `heroku.release.creation_timestamp` | string | Time and date the release was created | `2022-10-23T18:00:42Z` | Optional |
| `heroku.release.commit` | string | Commit hash for the current release | `e6134959463efd8966b20e75b913cafe3f5ec` | Optional |
| `heroku.app.id` | string | Unique identifier for the application | `2daa2797-e42b-4624-9322-ec3f968df4da` | Optional |
<!-- endsemconv -->
**Mapping:**
| Dyno metadata environment variable | Resource attribute |
|------------------------------------|-------------------------------------|
| `HEROKU_APP_ID` | `heroku.app.id` |
| `HEROKU_APP_NAME` | `service.name` |
| `HEROKU_DYNO_ID` | `service.instance.id` |
| `HEROKU_RELEASE_CREATED_AT` | `heroku.release.creation_timestamp` |
| `HEROKU_RELEASE_VERSION` | `service.version` |
| `HEROKU_SLUG_COMMIT` | `heroku.release.commit` |
Additionally, [the `cloud.provider` resource attribute MUST be set to `heroku`](../cloud.md).
[Heroku dyno metadata]: https://devcenter.heroku.com/articles/dyno-metadata