为通知中心启用诊断日志

开始使用 Azure 通知中心命名空间时,你可能想要监视命名空间的创建、删除或访问方式和时间。 本文概述所有可用的操作日志和诊断日志。

Azure 通知中心目前支持活动日志和操作日志,这些日志捕获针对 Azure 通知中心命名空间执行的管理操作。

诊断日志架构

所有日志均以 JavaScript 对象表示法 (JSON) 格式存储在以下两个位置:

  • AzureActivity:显示通过 Azure 门户或 Azure 资源管理器模板部署对命名空间执行操作时生成的日志。
  • AzureDiagnostics:显示使用 API 或通过语言 SDK 中的管理客户端对命名空间执行操作时生成的日志。

诊断日志 JSON 字符串包含下表列出的元素:

“属性” 说明
time 日志的 UTC 时间戳
ResourceId Azure 资源的相对路径
operationName 管理操作的名称
category 日志类别。 有效值:OperationalLogs
callerIdentity 启动管理操作的调用方的标识
resultType 管理操作的状态。 有效值:SucceededFailed
resultDescription 管理操作的描述
correlationId 管理操作的相关 ID(如果指定)
callerIpAddress 调用方的 IP 地址。 对于源自 Azure 门户的调用为空

下面是运行日志 JSON 字符串的示例:

{
    "operationName": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/action",
    "resourceId": "/SUBSCRIPTIONS/2CAC2A14-BA6B-46A6-BCE8-2D9781A41BA2/RESOURCEGROUPS/SAMPLES/PROVIDERS/MICROSOFT.NOTIFICATIONHUBS/NAMESPACES/SAMPLE-NS",
    "time": "1/1/2021 5:16:32 AM +00:00",
    "category": "OperationalLogs",
    "resultType": "Succeeded",
    "resultDescription": "Gets Hub Authorization Rules",
    "correlationId": "00000000-0000-0000-0000-000000000000",
    "callerIdentity": "{ \"identityType\": \"Portal\", \"identity\": \"\" }"
}

callerIdentity 字段可以为空,也可以为是以下格式之一的 JSON 字符串。

对于源自 Azure 门户的调用,identity 字段为空。 日志可以与活动日志相关联,用于确定已登录的用户。

{
    "identityType": "Portal",
    "identity": ""
}

对于通过 Azure 资源管理器发起的调用,identity 字段包含已登录用户的用户名。

{
   "identityType": "Username",
   "identity": "test@foo.com"
}

对于对通知中心 REST API 的调用,identity 字段包含用于生成 SharedAccessSignature 令牌的访问策略的名称。

{
   "identityType": "KeyName",
   "identity": "SharedAccessRootKey2"
}

在操作日志中捕获的事件和操作

操作日志捕获针对 Azure 通知中心命名空间执行的所有管理操作。 由于在通知中心进行的数据操作量较大,因此不会捕获数据操作。

有关在操作日志中捕获的管理操作的列表,请参阅 Microsoft.NotificationHubs 资源提供程序操作

启用操作日志

操作日志默认已禁用。 若要启用日志,请执行以下操作:

  1. Azure 门户中,转到你的 Azure 通知中心命名空间,然后在“监视”下选择“诊断设置”。

    “诊断设置”链接

  2. 在“诊断设置”窗格中,选择“添加诊断设置”。

    “添加诊断设置”链接

  3. 执行以下操作来配置诊断设置:

    a. 在“名称”框中,输入诊断设置的名称。

    b. 为诊断日志选择以下三个目标之一:

    • 如果选择“发送到 Log Analytics 工作区”,则需要指定要将诊断发送到的 Log Analytics 实例。

      注意

      目前不支持发送到 Log Analytics 工作区。

    • 如果选择“存档到存储帐户”,则需要配置用于存储诊断日志的存储帐户。
    • 如果选择“流式传输到事件中心”,则需要配置要将诊断日志流式传输到的事件中心。

    c. 选中“OperationalLogs”复选框。

    “诊断设置”窗格

  4. 选择“保存” 。

新设置将在大约 10 分钟后生效。 日志将显示在“诊断日志”窗格中配置的存档目标中。

若要详细了解如何配置诊断设置,请参阅:

若要详细了解 Azure 通知中心,请参阅: