> Source: https://www.ymotongpoo.com/works/otel-specs-ja/semconv/dotnet/dotnet-signalr-metrics/


# SignalRサーバーメトリクスに関するセマンティック規約

**ステータス**: [Stable][DocumentStatus]

この記事では、.NETのコンポーネントとランタイムが発行するSignalRメトリクスに関するセマンティック規約を定義します。

## メトリクス: `signalr.server.connection.duration`

このメトリクスは、`[ 0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, 60, 120, 300 ]` の[`ExplicitBucketBoundaries` advisoryパラメータ](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.59.0/specification/metrics/api.md#instrument-advisory-parameters)を指定すべきです（SHOULD）。

<!-- semconv metric.signalr.server.connection.duration -->
<!-- NOTE: THIS TEXT IS AUTOGENERATED. DO NOT EDIT BY HAND. -->
<!-- see templates/registry/markdown/snippet.md.j2 -->
<!-- prettier-ignore-start -->

| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
| -------- | --------------- | ----------- | -------------- | --------- | ------ |
| `signalr.server.connection.duration` | Histogram | `s` | サーバー上の接続の持続時間。[1] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | |

**[1]:** Meterの名前: `Microsoft.AspNetCore.Http.Connections`; 追加されたバージョン: ASP.NET Core 8.0

**Attributes:**

| Key | Stability | [Requirement Level](/works/otel-specs-ja/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
| [`signalr.connection.status`](https://opentelemetry.io/docs/specs/semconv/registry/attributes/signalr/) | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | `Recommended` | string | SignalRのHTTP接続のクロージャステータス。 | `app_shutdown`; `timeout` |
| [`signalr.transport`](https://opentelemetry.io/docs/specs/semconv/registry/attributes/signalr/) | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | `Recommended` | string | [SignalRのトランスポート種別](https://github.com/dotnet/aspnetcore/blob/main/src/SignalR/docs/specs/TransportProtocols.md) | `web_sockets`; `long_polling` |

---

`signalr.connection.status`には、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません（MUST）。そうでない場合は、独自の値を使用してもかまいません（MAY）。

| Value | Description | Stability |
| --- | --- | --- |
| `app_shutdown` | アプリケーションがシャットダウン中であるため、接続がクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `normal_closure` | 接続が正常にクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `timeout` | タイムアウトにより接続がクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |

---

`signalr.transport`には、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません（MUST）。そうでない場合は、独自の値を使用してもかまいません（MAY）。

| Value | Description | Stability |
| --- | --- | --- |
| `long_polling` | LongPollingプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `server_sent_events` | ServerSentEventsプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `web_sockets` | WebSocketsプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |

<!-- prettier-ignore-end -->
<!-- END AUTOGENERATED TEXT -->
<!-- endsemconv -->

## メトリクス: `signalr.server.active_connections`

<!-- semconv metric.signalr.server.active_connections -->
<!-- NOTE: THIS TEXT IS AUTOGENERATED. DO NOT EDIT BY HAND. -->
<!-- see templates/registry/markdown/snippet.md.j2 -->
<!-- prettier-ignore-start -->

| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
| -------- | --------------- | ----------- | -------------- | --------- | ------ |
| `signalr.server.active_connections` | UpDownCounter | `{connection}` | サーバー上で現在アクティブな接続数。[1] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | |

**[1]:** Meterの名前: `Microsoft.AspNetCore.Http.Connections`; 追加されたバージョン: ASP.NET Core 8.0

**Attributes:**

| Key | Stability | [Requirement Level](/works/otel-specs-ja/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
| [`signalr.connection.status`](https://opentelemetry.io/docs/specs/semconv/registry/attributes/signalr/) | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | `Recommended` | string | SignalRのHTTP接続のクロージャステータス。 | `app_shutdown`; `timeout` |
| [`signalr.transport`](https://opentelemetry.io/docs/specs/semconv/registry/attributes/signalr/) | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | `Recommended` | string | [SignalRのトランスポート種別](https://github.com/dotnet/aspnetcore/blob/main/src/SignalR/docs/specs/TransportProtocols.md) | `web_sockets`; `long_polling` |

---

`signalr.connection.status`には、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません（MUST）。そうでない場合は、独自の値を使用してもかまいません（MAY）。

| Value | Description | Stability |
| --- | --- | --- |
| `app_shutdown` | アプリケーションがシャットダウン中であるため、接続がクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `normal_closure` | 接続が正常にクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `timeout` | タイムアウトにより接続がクローズされました。 | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |

---

`signalr.transport`には、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません（MUST）。そうでない場合は、独自の値を使用してもかまいません（MAY）。

| Value | Description | Stability |
| --- | --- | --- |
| `long_polling` | LongPollingプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `server_sent_events` | ServerSentEventsプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |
| `web_sockets` | WebSocketsプロトコル | ![Stable](https://img.shields.io/badge/-stable-lightgreen) |

<!-- prettier-ignore-end -->
<!-- END AUTOGENERATED TEXT -->
<!-- endsemconv -->

[DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status

