Skip to content

Commit 37bd4af

Browse files
Merge pull request #269414 from v-thepet/signalr-monitor
Azure Monitor horizontals - SignalR
2 parents 23c509c + 619a2a3 commit 37bd4af

File tree

7 files changed

+408
-448
lines changed

7 files changed

+408
-448
lines changed

.openpublishing.redirection.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3305,6 +3305,16 @@
33053305
"redirect_url": "/azure/azure-signalr/signalr-tutorial-authenticate-azure-functions",
33063306
"redirect_document_id": true
33073307
},
3308+
{
3309+
"source_path_from_root": "/articles/azure-signalr/signalr-howto-monitor-reference.md",
3310+
"redirect_url": "/azure/azure-signalr/monitor-signalr-reference",
3311+
"redirect_document_id": false
3312+
},
3313+
{
3314+
"source_path_from_root": "/articles/azure-signalr/concept-metrics.md",
3315+
"redirect_url": "/azure/azure-signalr/monitor-signalr",
3316+
"redirect_document_id": false
3317+
},
33083318
{
33093319
"source_path_from_root": "/articles/sql-database-edge/index.yml",
33103320
"redirect_url": "/azure/azure-sql-edge/",

articles/azure-signalr/TOC.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@
8282
- name: Messages and connections
8383
href: signalr-concept-messages-and-connections.md
8484
- name: Metrics
85-
href: concept-metrics.md
85+
href: monitor-signalr-reference.md
8686
- name: Performance considerations
8787
href: signalr-concept-performance.md
8888
- name: Authentication
@@ -159,10 +159,12 @@
159159
href: signalr-howto-work-with-apim.md
160160
- name: Monitor
161161
items:
162+
- name: Monitor
163+
href: monitor-signalr.md
162164
- name: Use diagnostic logs to monitor SignalR Service
163165
href: signalr-howto-diagnostic-logs.md
164-
- name: Monitor SignalR service data reference
165-
href: signalr-howto-monitor-reference.md
166+
- name: Monitoring data reference
167+
href: monitor-signalr-reference.md
166168
- name: Audit compliance using Azure Policy
167169
href: signalr-howto-azure-policy.md
168170
- name: Troubleshooting

articles/azure-signalr/concept-metrics.md

Lines changed: 0 additions & 95 deletions
This file was deleted.
Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
---
2+
title: Monitoring data reference for Azure SignalR Service
3+
description: This article contains important reference material you need when you monitor Azure SignalR Service.
4+
ms.date: 03/21/2024
5+
ms.custom: horz-monitor
6+
ms.topic: reference
7+
author: vicancy
8+
ms.author: lianwei
9+
ms.service: signalr
10+
---
11+
12+
# Azure SignalR Service monitoring data reference
13+
14+
[!INCLUDE [horz-monitor-ref-intro](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-intro.md)]
15+
16+
See [Monitor Azure SignalR Service](monitor-signalr.md) for details on the data you can collect for Azure SignalR Service and how to use it.
17+
18+
[!INCLUDE [horz-monitor-ref-metrics-intro](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-metrics-intro.md)]
19+
20+
Metrics for Azure SignalR Service are in the **Errors**, **Saturation**, or **Traffic** categories.
21+
22+
### Supported metrics for Microsoft.SignalRService/SignalR
23+
The following table lists the metrics available for the Microsoft.SignalRService/SignalR resource type.
24+
[!INCLUDE [horz-monitor-ref-metrics-tableheader](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-metrics-tableheader.md)]
25+
[!INCLUDE [Microsoft.SignalRService/SignalR](~/azure-reference-other-repo/azure-monitor-ref/supported-metrics/includes/microsoft-signalrservice-signalr-metrics-include.md)]
26+
27+
### Supported metrics for Microsoft.SignalRService/SignalR/replicas
28+
The following table lists the metrics available for the Microsoft.SignalRService/SignalR/replicas resource type.
29+
[!INCLUDE [horz-monitor-ref-metrics-tableheader](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-metrics-tableheader.md)]
30+
[!INCLUDE [Microsoft.SignalRService/SignalR/replicas](~/azure-reference-other-repo/azure-monitor-ref/supported-metrics/includes/microsoft-signalrservice-signalr-replicas-metrics-include.md)]
31+
32+
For more details about the metrics for Azure SignalR Service, see [Azure SignalR Service metrics](monitor-signalr.md#azure-signalr-service-metrics).
33+
34+
> [!NOTE]
35+
> The metrics aggregation types appear in metrics explorer in the Azure portal as **Count**, **Avg**, **Min**, **Max**, and **Sum**.
36+
>
37+
> **Count** is the count of sampling data received. Count is defined as a general metrics aggregation type and can't be excluded from the list of available aggregation types. It's not generally useful for SignalR Service but can sometimes be used to check if the sampling data has been sent to metrics.
38+
39+
[!INCLUDE [horz-monitor-ref-metrics-dimensions-intro](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-metrics-dimensions-intro.md)]
40+
41+
[!INCLUDE [horz-monitor-ref-metrics-dimensions](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-metrics-dimensions.md)]
42+
43+
### Endpoint
44+
45+
Describes the type of connection. Includes dimension values: **Client**, **Server**, and **LiveTrace**.
46+
47+
### ConnectionCloseCategory
48+
49+
Gives the reason for closing the connection. Includes the following dimension values.
50+
51+
| Value | Description |
52+
|---------|--------|
53+
|**Normal** | Connection closed normally.|
54+
|**Throttled**|With Message count/rate or connection throttling, check Connection Count and Message Count current usage and your resource limits.|
55+
|**PingTimeout**|Connection ping timeout.|
56+
|**NoAvailableServerConnection**|Client connection can't be established and doesn't pass handshake because there's no available server connection.|
57+
|**InvokeUpstreamFailed**|Upstream invoke failed.|
58+
|**SlowClient**|Too many unsent messages queued up at service side.|
59+
|**HandshakeError**|Connection terminated in the handshake phase, which could be caused by the remote party closing the WebSocket connection without completing the close handshake. HandshakeError is caused by a network issue. Check browser settings to see if the client is able to create a websocket connection.|
60+
|**ServerConnectionNotFound**|Target hub server not available. This value is by design and reconnection should be done after this drop.|
61+
|**ServerConnectionClosed**|Client connection closed because the corresponding server connection was dropped. When app server uses Azure SignalR Service SDK, in the background, it initiates server connections to the remote Azure SignalR Service. Each client connection to the service is associated with one of the server connections to route traffic between the client and app server. Once a server connection is closed, all the client connections it serves are closed with the **ServerConnectionDropped** message.|
62+
|**ServiceTransientError**|Internal server error.|
63+
|**BadRequest**|A bad request is caused by an invalid hub name, wrong payload, or a malformed request.|
64+
|**ClosedByAppServer**|App server asked the service to close the client.|
65+
|**ServiceReload**|Service reload is triggered when a connection is dropped due to an internal service component reload. This event doesn't indicate a malfunction and is part of normal service operation.|
66+
|**ServiceModeSwitched**|Connection closed after service mode switched, such as from Serverless mode to Default mode.|
67+
|**Unauthorized**|The connection is unauthorized.|
68+
69+
[!INCLUDE [horz-monitor-ref-resource-logs](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-resource-logs.md)]
70+
71+
### Supported resource logs for Microsoft.SignalRService/SignalR
72+
[!INCLUDE [Microsoft.SignalRService/SignalR](~/azure-reference-other-repo/azure-monitor-ref/supported-logs/includes/microsoft-signalrservice-signalr-logs-include.md)]
73+
74+
### Supported resource logs for Microsoft.SignalRService/SignalR/replicas
75+
[!INCLUDE [Microsoft.SignalRService/SignalR/replicas](~/azure-reference-other-repo/azure-monitor-ref/supported-logs/includes/microsoft-signalrservice-signalr-replicas-logs-include.md)]
76+
77+
## Resource Log table mapping
78+
79+
Field names for Log Analytics vary slightly from field names for Storage destinations.
80+
81+
### Archive log schema for a storage account
82+
83+
Archive log JSON strings include the following elements:
84+
85+
**Format**
86+
87+
Name | Description
88+
------- | -------
89+
time | Log event time.
90+
level | Log event level.
91+
resourceId | Resource ID of the Azure SignalR Service.
92+
location | Location of the Azure SignalR Service.
93+
category | Category of the log event.
94+
operationName | Operation name of the event.
95+
callerIpAddress | IP address of the server/client.
96+
properties | Detailed properties related to this log event, as listed in the following table.
97+
98+
**Properties**
99+
100+
Name | Description
101+
------- | -------
102+
type | Type of the log event. Currently, `ConnectivityLogs` type is available, to provide information about connectivity to the Azure SignalR Service.
103+
collection | Collection of the log event. Allowed values are `Connection`, `Authorization`, or `Throttling`.
104+
connectionId | Identity of the connection.
105+
transportType | Transport type of the connection. Allowed values are `Websockets`, `ServerSentEvents`, or `LongPolling`.
106+
connectionType | Type of the connection. Allowed values are `Server` or `Client`. `Server` is connection from server side and `Client` is connection from client side.
107+
userId | Identity of the user.
108+
message | Detailed message of log event.
109+
110+
### Archive logs schema for Log Analytics
111+
112+
Archive log columns include the following elements:
113+
114+
Name | Description
115+
------- | -------
116+
TimeGenerated | Log event time.
117+
Collection | Collection of the log event. Allowed values are: `Connection`, `Authorization`, and `Throttling`.
118+
OperationName | Operation name of the event.
119+
Location | Location of the Azure SignalR Service.
120+
Level | Log event level.
121+
CallerIpAddress | IP address of the server/client.
122+
Message | Detailed message of log event.
123+
UserId | Identity of the user.
124+
ConnectionId | Identity of the connection.
125+
ConnectionType | Type of the connection. Allowed values are: `Server` or `Client`. `Server` is connection from server side and `Client` is connection from client side.
126+
TransportType | Transport type of the connection. Allowed values are: `Websockets`, `ServerSentEvents`, or `LongPolling`
127+
128+
[!INCLUDE [horz-monitor-ref-logs-tables](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-logs-tables.md)]
129+
130+
### SignalR
131+
Microsoft.SignalRService/SignalR
132+
133+
- [AzureActivity](/azure/azure-monitor/reference/tables/AzureActivity#columns)
134+
- [AzureMetrics](/azure/azure-monitor/reference/tables/AzureMetrics#columns)
135+
- [SignalRServiceDiagnosticLogs](/azure/azure-monitor/reference/tables/SignalRServiceDiagnosticLogs#columns)
136+
137+
[!INCLUDE [horz-monitor-ref-activity-log](~/reusable-content/ce-skilling/azure/includes/azure-monitor/horizontals/horz-monitor-ref-activity-log.md)]
138+
- [Microsoft.SignalRService resource provider operations](/azure/role-based-access-control/permissions/web-and-mobile#microsoftsignalrservice)
139+
140+
## Related content
141+
142+
- See [Monitor Azure SignalR Service](monitor-signalr.md) for a description of monitoring Azure SignalR Service.
143+
- See [Monitor Azure resources with Azure Monitor](/azure/azure-monitor/essentials/monitor-azure-resource) for details on monitoring Azure resources.
144+
- See [Use diagnostic logs to monitor SignalR Service](signalr-howto-diagnostic-logs.md) for detailed instructions on how to enable, query, and troubleshoot with Azure SignalR Service logs.

0 commit comments

Comments
 (0)