Azure Monitor 查询 Java 技能
用 Java 查询 Azure Monitor 日志与资源指标。
文档要求使用TokenCredential,并通过环境变量配置工作区、资源和凭据;查询主要是读取操作,未见恶意行为或破坏性默认值。但未说明最小RBAC权限、查询数据敏感性、数据流、用户确认、审计或回滚,因此扣分。
覆盖同步、异步、日志、指标、批量查询和错误处理,且提供失败状态检查。但包已明确弃用,示例存在不完整占位符、缺少导入或可疑API不一致,未提供该技能专属可复现实验或测试,因此扣分;静态上限内评分。
触发词、Java受众和日志/指标场景较清楚,也提供中国云端点示例,有利于大陆网络环境适配。但没有明确非适用边界,且技能针对已弃用包,实际新项目应迁移到其他包,因此扣分。
具备YAML元数据、安装说明、前置条件、分层章节、参考示例、错误处理、MIT许可证、作者和版本,并披露弃用状态。但版本可能过时,缺少变更日志、维护责任和明确更新路径,文档仍含隐藏假设和占位符,因此扣分。
可直接帮助用户生成Azure Monitor Query Java客户端、Kusto、日志、指标和批量查询代码,边际价值明确。但目标依赖已弃用包,部分示例需要人工修正,未有该技能输出的执行验证或完整项目模板,因此只能给有限分数。
提供API、仓库、迁移、包和故障排查等参考链接,并有明确版本与代码示例。但本次仅静态阅读,未见技能专属测试、CI覆盖或第三方执行证据,关键API正确性无法独立复现,因此扣分。
- 该技能针对已弃用的azure-monitor-query包;新项目应优先迁移到azure-monitor-query-logs和azure-monitor-query-metrics。
- 示例包含占位符、缺少部分导入,并存在结果状态/API调用不一致;使用前需要按目标SDK版本编译核验。
- 文档未说明最小RBAC权限或日志查询中的敏感数据处理,用户应自行限制凭据和查询范围。
- 未提供该技能专属测试或执行证据,本评估不能确认示例可运行。
它能做什么 & 适用场景
该技能为 Java 开发者提供 Azure Monitor Query SDK 的使用指南,可通过 Kusto 查询 Log Analytics 工作区,也可查询 Azure 资源指标。内容涵盖同步与异步客户端、批量日志查询、多工作区查询、指标聚合、结果映射和错误处理。其依赖的 azure-monitor-query 包已弃用,新项目应迁移到 azure-monitor-query-logs 和 azure-monitor-query-metrics。
指导开发者通过 Maven 引入 com.azure:azure-monitor-query:1.5.9,使用 TokenCredential 创建 LogsQueryClient、LogsQueryAsyncClient、MetricsQueryClient 和 MetricsQueryAsyncClient。它执行工作区或资源级 Kusto 日志查询,读取表格行、统计信息、可视化数据和部分失败状态;同时查询 Azure 资源指标、时间序列、维度及聚合值,并展示批量查询、多资源查询、超时、附加工作区和主权云端点配置。
- 使用 Java 的 Azure 开发者需要在 Log Analytics 工作区中执行 Kusto 查询并读取活动日志。
- 负责 Azure 资源监控的工程师需要查询指标时间序列、维度及平均值、总计或计数。
- 需要一次提交多个日志查询的团队可使用批量查询并分别检查结果状态。
- 需要将日志结果转换为业务 Java 模型的开发者可参考模型映射示例。
- 运行在 Azure 中国云的 Java 应用可参考专用日志和指标端点配置。
优缺点一览
- 覆盖日志和指标两类 Azure Monitor 查询。
- 同时提供同步与异步客户端示例。
- 包含批量查询、多工作区查询、聚合、统计信息、可视化和错误处理模式。
- 提供 Maven 安装、DefaultAzureCredential 和主权云配置示例。
- 依赖的 `azure-monitor-query` 包已弃用,新项目需要迁移到两个替代包。
- 必须拥有 Log Analytics 工作区或 Azure 资源,以及具备相应权限的 TokenCredential。
- 源材料没有提供该具体技能的独立测试结果或兼容性验证记录。
- 技能聚焦 Java Azure Monitor Query,不覆盖其他 Azure 服务或语言。
如何安装
将技能加入所选 Agent 的技能目录。整个集合可运行 npx skills add microsoft/skills,再在向导中选择所需技能;README 以 .github/skills/ 作为 GitHub Copilot 示例目录。Java 项目还需在 Maven 中加入 com.azure:azure-monitor-query:1.5.9,或通过 Azure SDK BOM 管理版本。
如何使用
在支持 Agent Skills 的编码代理中使用触发词,例如 LogsQueryClient java、MetricsQueryClient java、kusto query java、log analytics java 或 azure monitor query java。准备 Log Analytics workspace、Azure 资源以及具备相应权限的 TokenCredential,并按需设置 LOG_ANALYTICS_WORKSPACE_ID、AZURE_RESOURCE_ID 和 AZURE_TOKEN_CREDENTIALS。注意该包已弃用,应将新开发迁移到 azure-monitor-query-logs 和 azure-monitor-query-metrics。
对比同类
该技能明确建议以 azure-monitor-query-logs 替代日志查询,以 azure-monitor-query-metrics 替代指标查询;迁移指南链接列在 SKILL.md 中。