你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

短信日志

Azure 通信服务提供日志记录功能,可用于监视和调试通信服务解决方案。 可以通过 Azure 门户配置这些功能。

重要

本文介绍通过 Azure Monitor 启用的日志,另请参阅 常见问题解答。 若要为通信服务启用这些日志,请参阅: 在诊断设置中启用日志记录

先决条件

Azure 通信服务通过 Azure Monitor 日志概述Azure Monitor 指标提供监视和分析功能。

每个 Azure 资源都需有自身的诊断设置,其设置定义了以下条件:

  • 发送到设置中所定义的目标地点的日志和指标数据类别。 不同资源类型的可用类别各不相同。
  • 要将日志发送到的一个或多个目标。 当前目标包括 Log Analytics 工作区、事件中心和 Azure 存储。
  • 一个诊断设置最多只能为每种目标定义一个。 如果要将数据发送到特定目标类型的多个类型(例如,两个不同的 Log Analytics 工作区),则需要创建多个设置。 每个资源最多可以有五个诊断设置。

完成这些说明以配置 Azure Monitor 资源以开始为通信服务创建日志和指标。 有关在所有 Azure 资源中使用诊断设置的详细文档,请参阅: 在诊断设置中启用日志记录

注意

若要为 SMS 启用日志,请在诊断设置名称下选择 “SMS 运营”

概述

短信操作日志是事件和活动的记录,可提供对短信 API 请求的见解。 日志捕获有关 SMS 性能和功能的详细信息。 详细信息包括消息的状态、消息是已成功传递、阻止还是无法发送。

SMS作日志包含有助于识别趋势和模式的信息,解决可能影响性能的问题,例如消息传送失败或服务问题。 这些日志包括以下详细信息:

  • 消息已发送。
  • 消息已收到。
  • 消息已送达。
  • 消息选择加入和选择退出。

资源日志类别

通信服务提供以下类型的日志:

  • 使用情况日志 - 提供与每个计费服务产品相关联的使用情况数据
  • 短信操作日志 - 提供与短信服务相关的基本信息

使用情况日志架构

属性 说明
Timestamp 生成日志的时间戳 (UTC)。
Operation Name 与日志记录相关联的操作。
Operation Version 如果使用 API 执行 operationName,则 api-version 与该操作关联。 如果没有 API 对应于此操作,版本表示该操作的版本,以防将来与操作相关的属性发生更改。
Category 事件的日志类别。 类别是可以在特定资源上启用或禁用日志的粒度。 在事件的属性 blob 内显示的属性在特定日志类别和资源类型中相同。
Correlation ID 关联事件的 ID。 可用于标识多个表之间的关联事件。
Properties 适用于各种通信服务模式的其他数据。
Record ID 给定使用情况记录的唯一 ID。
Usage Type 使用模式 例如聊天、PSTN、NAT 等。
Unit Type 对于给定的使用情况模式,使用情况所基于的单位类型。 例如分钟、兆字节、消息等。
Quantity 此记录使用或消耗的单位数。

短信操作日志

属性 说明
TimeGenerated 生成日志的时间戳 (UTC)。
OperationName 与日志记录相关联的操作。
CorrelationID 关联事件的 ID。 可用于标识多个表之间的关联事件。
OperationVersion 如果使用 API 执行 operationName,则 api-version 与该操作关联。 如果没有 API 对应于此操作,版本表示该操作的版本,以防将来与操作相关的属性发生更改。
Category 事件的日志类别。 类别是可以在特定资源上启用或禁用日志的粒度。 事件的属性 blob 中的属性在特定日志类别和资源类型中是相同的。
ResultType 操作状态。
ResultSignature 操作的子状态。 如果该操作对应于 REST API 调用,则此字段为相应 REST 调用的 HTTP 状态代码。
ResultDescription 此操作的静态文本说明。
DurationMs 操作持续时间,以毫秒为单位。
CallerIpAddress 调用方 IP 地址,前提是该操作对应于来自某个具有公开可用 IP 地址的实体的 API 调用。
Level 事件的严重级别。
URI 请求的 URI。
OutgoingMessageLength 传出消息中的字符数。
IncomingMessageLength 传入消息中的字符数。
DeliveryAttempts 尝试发送此消息的次数。
PhoneNumber 发送短信的电话号码。
SdkType 请求中使用的 SDK 类型。
PlatformType 请求中使用的平台类型。
Method 请求中使用的方法。
NumberType 发短信所用号码的类型。 它可以是 LongCodeNumberShortCodeNumberDynamicAlphaSenderID
MessageID 表示为每个传出和传入消息生成的唯一消息 ID。 在 SMS API 响应对象中找到 MessageId。 此 API 返回的消息 ID 的格式被视为内部实现详细信息,并随时更改,且不会通知。 客户端必须将消息 ID 视为不透明的标识符,不得根据其格式或内容分析、推断结构或生成逻辑。
Country 表示发送或接收短信的国家/地区。

短信发送日志示例


    [
      {
        "TimeGenerated": "2022-09-26T15:58:30.100Z",
        "OperationName": "SMSMessagesSent",
        "CorrelationId": "dDRmubfpNZZZZZnxBtw3Q.0",
        "OperationVersion": "2020-07-20-preview1",
        "Category":"SMSOperational",
        "ResultType": "Succeeded",
        "ResultSignature": 202,
        "DurationMs": 130,
        "CallerIpAddress": "127.0.0.1",
        "Level": "Informational",
        "URI": "https://sms-e2e-prod.communication.azure.com/sms?api-version=2020-07-20-preview1",
        "OutgoingMessageLength": 151,
        "IncomingMessageLength": 0,
        "DeliveryAttempts": 0,
        "PhoneNumber": "+18445791704",
        "NumberType": "LongCodeNumber",
        "SdkType": "azsdk-net-Communication.Sms",
        "PlatformType": "Microsoft Windows 10.0.17763",
        "Method": "POST",
        "MessageId": "ff00e5c9-876d-4958-86e3-4637484fe5bd",
        "Country": "US"
      }
    ]

短信送达报告日志示例


    [
      {
        "TimeGenerated": "2022-09-26T15:58:30.200Z",
        "OperationName": "SMSDeliveryReportsReceived",
        "CorrelationId": "tl8WpUTESTSTSTccYadXJm.0",
        "Category":"SMSOperational",
        "ResultType": "Succeeded",
        "ResultSignature": 200,
        "DurationMs": 130,
        "CallerIpAddress": "127.0.0.1",
        "Level": "Informational",
        "URI": "https://global.smsgw.prod.communication.microsoft.com/rtc/telephony/sms/DeliveryReport",
        "OutgoingMessageLength": 0,
        "IncomingMessageLength": 0,
        "DeliveryAttempts": 1,
        "PhoneNumber": "+18445791704",
        "NumberType": "LongCodeNumber",
        "SdkType": "",
        "PlatformType": "",
        "Method": "POST",
        "MessageId": "ff00e5c9-876d-4958-86e3-4637484fe5bd",
        "Country": "US"
      }
    ]

收到短信的日志示例


    [
      {
        "TimeGenerated": "2022-09-27T15:58:30.200Z",
        "OperationName": "SMSMessagesReceived",
        "CorrelationId": "e2KFTSTSTI/5PTx4ZZB.0",
        "Category":"SMSOperational",
        "ResultType": "Succeeded",
        "ResultSignature": 200,
        "DurationMs": 130,
        "CallerIpAddress": "127.0.0.1",
        "Level": "Informational",
        "URI": "https://global.smsgw.prod.communication.microsoft.com/rtc/telephony/sms/inbound",
        "OutgoingMessageLength": 0,
        "IncomingMessageLength": 110,
        "DeliveryAttempts": 0,
        "PhoneNumber": "+18445791704",
        "NumberType": "LongCodeNumber",
        "SdkType": "",
        "PlatformType": "",
        "Method": "POST",
        "MessageId": "11c6ee31-63fe-477c-8d51-f800543c6694",
        "Country": "US"
      }
    ]

短信常见问题解答