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

在 Azure API for FHIR 中启用诊断日志记录

本文介绍如何在 Azure API for FHIR 中启用诊断日志记录,并能够查看这些日志的一些示例查询。 对于必须符合法规要求(如 HIPAA)的所有医疗保健服务,访问诊断日志必不可少。 Azure API for FHIR 中用于启用诊断日志的功能是 Azure 门户中的诊断设置

查看和下载 FHIR 指标数据

可以从门户的“监视 | 指标”下查看指标。 度量值包括请求数、平均延迟、错误数、数据大小、使用的 RU、超出容量的请求数,以及可用性(以 % 为单位)。 下面的屏幕截图显示了用于过去七天内很少活动的示例环境使用的 RU。 可以下载 JSON 格式的数据。

门户中 Azure API for FHIR 的指标

启用审核日志

  1. 若要在 Azure API for FHIR 中启用诊断日志记录,请在 Azure 门户中选择 Azure API for FHIR 服务

  2. 导航到“诊断设置”

    添加 Azure FHIR 诊断设置。

  3. 选择“+ 添加诊断设置”

  4. 输入设置名称

  5. 选择要用于访问诊断日志的方法:

    1. 将诊断日志保存到存储帐户以便审核或手动检查。 需要已创建想要使用的存储帐户。
    2. 流式传输到事件中心,以便第三方服务或自定义分析解决方案引入。 需要先创建事件中心命名空间和事件中心策略,然后才能配置此步骤。
    3. 流式传输到 Azure Monitor 中的 Log Analytics 工作区。 需要先创建 Logs Analytics 工作区,然后才能选择此选项。
  6. 选择“AuditLogs”和/或“AllMetrics” 。 指标包括服务名称、可用性、数据大小、总延迟、请求总数、总错误数和时间戳。 你可以找到有关支持的指标的更多详细信息。

    Azure FHIR 诊断设置。选择“审核日志”和/或“AllMetrics”。

  7. 选择“保存”

注意

最初的几条日志最长可能需要在 15 分钟后才会显示在 Log Analytics 中。 此外,如果 Azure API for FHIR 从一个资源组或订阅移动到另一个资源组或订阅,请在移动完成后更新设置。

若要详细了解如何使用诊断日志,请参阅 Azure 资源日志文档

审核日志详细信息

此时,Azure API for FHIR 服务将在审核日志中返回以下字段:

字段名称 类型 说明
CallerIdentity 动态 一个包含标识信息的泛型属性包
CallerIdentityIssuer 字符串 颁发者
CallerIdentityObjectId 字符串 Object_Id
CallerIPAddress 字符串 调用方的 IP 地址
CorrelationId 字符串 相关性 ID
FhirResourceType 字符串 已针对其执行操作的资源类型
LogCategory 字符串 日志类别 (当前返回的“AuditLogs”LogCategory)
位置 字符串 处理请求的服务器的位置 (例如,美国中南部)
OperationDuration int 完成此请求所花费的时间(以秒为单位)
OperationName String 描述操作类型 (,例如更新、搜索类型)
RequestUri 字符串 请求 URI
ResultType 字符串 当前可用的值为 Started、Succeeded 或 Failed
StatusCode int HTTP 状态代码。 例如, (200)
TimeGenerated DateTime 事件的日期和时间
属性 字符串 描述 fhirResourceType 的属性
SourceSystem 字符串 源系统(在本例中始终为 Azure)
TenantId 字符串 租户 ID
类型 字符串 日志类型(在本例中始终为 MicrosoftHealthcareApisAuditLog)
_ResourceId 字符串 有关资源的详细信息

示例查询

下面是可用于浏览日志数据的几个基本 Application Insights 查询。

运行以下查询可以查看 100 条最新的日志:

MicrosoftHealthcareApisAuditLogs
| limit 100

运行以下查询可以按 FHIR 资源类型对操作进行分组:

MicrosoftHealthcareApisAuditLogs 
| summarize count() by FhirResourceType

运行以下查询可以获取所有失败的结果

MicrosoftHealthcareApisAuditLogs 
| where ResultType == "Failed" 

结论

访问诊断日志对于监视服务和提供符合性报告至关重要。 使用 Azure API for FHIR,可以通过诊断日志来执行这些操作。

FHIR 是 HL7 的注册商标,经 HL7 许可使用。

后续步骤

在本文中,你已经了解了如何启用 Azure API for FHIR 的审核日志。 有关 Azure API for FHIR 配置设置的信息,请参阅

FHIR® 是 HL7 的注册商标,经 HL7 许可使用。