Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a datacenter resource. #1413

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .chloggen/adding-datacenter-convention.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Use this changelog template to create an entry for release notes.
#
# If your change doesn't affect end users you should instead start
# your pull request title with [chore] or use the "Skip Changelog" label.

# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
change_type: new_component

# The name of the area of concern in the attributes-registry, (e.g. http, cloud, db)
component: dc

# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
note: Allow users to categorize datacenter information.

# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists.
# The values here must be integers.
issues: [1409]

# (Optional) One or more lines of additional information to render under the primary note.
# These lines will be padded with 2 spaces and then inserted directly into the document.
# Use pipe (|) for multiline entries.
subtext: |
Many companies run in a Hybrid environment, and being able to see information when managing fleets
of servers is valuable as this allows for standardize monitoring of server level monitoring.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ body:
- area:container
- area:cpu
- area:db
- area:dc
- area:deployment
- area:destination
- area:device
Expand Down
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/change_proposal.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ body:
- area:container
- area:cpu
- area:db
- area:dc
- area:deployment
- area:destination
- area:device
Expand Down
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/new-conventions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ body:
- area:container
- area:cpu
- area:db
- area:dc
- area:deployment
- area:destination
- area:device
Expand Down
1 change: 1 addition & 0 deletions docs/attributes-registry/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ Currently, the following namespaces exist:
- [Container](container.md)
- [CPU](cpu.md)
- [Db](db.md)
- [DC](dc.md)
- [Deployment](deployment.md)
- [Destination](destination.md)
- [Device](device.md)
Expand Down
35 changes: 35 additions & 0 deletions docs/attributes-registry/dc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!--- Hugo front matter used to generate the website version of this page:
--->

<!-- NOTE: THIS FILE IS AUTOGENERATED. DO NOT EDIT BY HAND. -->
<!-- see templates/registry/markdown/attribute_namespace.md.j2 -->

# DC
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure it is a good idea to use the abbreviation here. I'd be more inclined to go with "Data Center" instead.


## Datacenter Attributes

Generic DataCenter infrastructure tagging.

| Attribute | Type | Description | Examples | Stability |
| ------------------ | ------ | -------------------------------------------- | -------------------------------------------------------------- | ---------------------------------------------------------------- |
| `dc.cage` | string | Name of the cage [1] | `cage-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.chassis` | string | Name of the chassis the server lives in. [2] | `pod-4` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.device.type` | string | Type of device used. | `server`; `chassis`; `network`; `pdu`; `switch`; `patch-panel` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.name` | string | Name of datacenter. | `dc-name` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.pod` | string | Name of the pod [3] | `pod-4` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.provider.type` | string | Type of datacenter | `cloud`; `colocation`; `internal` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.rack` | string | Name of the rack. [4] | `rack-7` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.site` | string | Name of the datacenter site [5] | `site-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `dc.suite` | string | Name of the datacenter suite [6] | `suite-5` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |

**[1]:** This is a literal cage which is used to protect servers from potential intruders.

**[2]:** A chassis is used to describe frame which contains servers together inside of a rack unit of a server rack. Typically used to take advantage of shared power supplies.

**[3]:** This is a grouping of many servers typically several racks of servers.

**[4]:** A tower frame which hold many servers and chassis. [Rack Unit](https://en.wikipedia.org/wiki/Rack_unit)

**[5]:** The name of the physical building.

**[6]:** Typically the room in the building where the server cages are located.
60 changes: 60 additions & 0 deletions docs/resource/datacenter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Datacenters

In case of datacenter operations users might need a way of describing the physical layout of where
processes are running.

<!-- semconv dc -->
<!-- NOTE: THIS TEXT IS AUTOGENERATED. DO NOT EDIT BY HAND. -->
<!-- see templates/registry/markdown/snippet.md.j2 -->
<!-- prettier-ignore-start -->
<!-- markdownlint-capture -->
<!-- markdownlint-disable -->


**Status:** ![Experimental](https://img.shields.io/badge/-experimental-blue)

**type:** `dc`

**Description:** Generic DataCenter infrastructure tagging.

| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|---|---|---|---|---|---|
| [`cloud.provider`](/docs/attributes-registry/cloud.md) | string | Name of the cloud provider. | `alibaba_cloud`; `aws`; `azure` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.cage`](/docs/attributes-registry/dc.md) | string | Name of the cage [1] | `cage-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.name`](/docs/attributes-registry/dc.md) | string | Name of datacenter. | `dc-name` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.pod`](/docs/attributes-registry/dc.md) | string | Name of the pod [2] | `pod-4` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.provider.type`](/docs/attributes-registry/dc.md) | string | Type of datacenter | `cloud`; `colocation`; `internal` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.rack`](/docs/attributes-registry/dc.md) | string | Name of the rack. [3] | `rack-7` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.site`](/docs/attributes-registry/dc.md) | string | Name of the datacenter site [4] | `site-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| [`dc.suite`](/docs/attributes-registry/dc.md) | string | Name of the datacenter suite [5] | `suite-5` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) |

**[1]:** This is a literal cage which is used to protect servers from potential intruders.

**[2]:** This is a grouping of many servers typically several racks of servers.

**[3]:** A tower frame which hold many servers and chassis. [Rack Unit](https://en.wikipedia.org/wiki/Rack_unit)

**[4]:** The name of the physical building.

**[5]:** Typically the room in the building where the server cages are located.



`cloud.provider` 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 | Stability |
|---|---|---|
| `alibaba_cloud` | Alibaba Cloud | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `aws` | Amazon Web Services | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `azure` | Microsoft Azure | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `gcp` | Google Cloud Platform | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `heroku` | Heroku Platform as a Service | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `ibm_cloud` | IBM Cloud | ![Experimental](https://img.shields.io/badge/-experimental-blue) |
| `tencent_cloud` | Tencent Cloud | ![Experimental](https://img.shields.io/badge/-experimental-blue) |



<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- END AUTOGENERATED TEXT -->
<!-- endsemconv -->
65 changes: 65 additions & 0 deletions model/dc/registry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
groups:
- id: registry.dc
type: attribute_group
display_name: Datacenter Attributes
brief: >
Generic DataCenter infrastructure tagging.
attributes:
- id: dc.name
type: string
stability: experimental
brief: 'Name of datacenter.'
examples: ['dc-name']
- id: dc.provider.type
type: string
stability: experimental
brief: 'Type of datacenter'
examples: ['cloud', 'colocation', 'internal']
- id: dc.device.type
type: string
stability: experimental
brief: 'Type of device used.'
examples: ['server', 'chassis', 'network', 'pdu', 'switch', 'patch-panel']
- id: dc.site
type: string
stability: experimental
brief: 'Name of the datacenter site'
note: >
The name of the physical building.
examples: ['site-1']
- id: dc.suite
type: string
stability: experimental
brief: 'Name of the datacenter suite'
note: >
Typically the room in the building where the server cages are located.
examples: ['suite-5']
- id: dc.cage
type: string
stability: experimental
brief: 'Name of the cage'
note: >
This is a literal cage which is used to protect servers from potential intruders.
examples: ['cage-1']
- id: dc.pod
type: string
stability: experimental
brief: 'Name of the pod'
note: >
This is a grouping of many servers typically several racks of servers.
examples: ['pod-4']
- id: dc.chassis
type: string
stability: experimental
brief: 'Name of the chassis the server lives in.'
note: >
A chassis is used to describe frame which contains servers together inside of a rack unit
of a server rack. Typically used to take advantage of shared power supplies.
examples: ['pod-4']
- id: dc.rack
type: string
stability: experimental
brief: 'Name of the rack.'
note: >
A tower frame which hold many servers and chassis. [Rack Unit](https://en.wikipedia.org/wiki/Rack_unit)
examples: ['rack-7']
16 changes: 16 additions & 0 deletions model/dc/resources.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
groups:
- id: dc
type: resource
name: dc
brief: >
Generic DataCenter infrastructure tagging.
attributes:
- ref: dc.name
requirement_level: recommended
- ref: cloud.provider
- ref: dc.provider.type
- ref: dc.suite
- ref: dc.site
- ref: dc.cage
- ref: dc.pod
- ref: dc.rack
1 change: 1 addition & 0 deletions templates/registry/markdown/weaver.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ acronyms:
- CLR
- CPU
- CSI
- DC
- DynamoDB
- ECS
- EKS
Expand Down
Loading