java - 如何获取 Azure Batch 自动池的池 ID 和相应的作业 ID?
问题描述
我正在使用 Azure Batch 并通过 Java API ( BatchClient
) 使用 AutoPoolSpecification 创建池。通过 Azure 门户或桌面应用程序Batch Explorer,可以查看有关当前运行的池的所有详细信息,包括它们的 ID 和相应的作业 ID。
现在我想使用Java API 找出所有正在运行的作业的这些信息(例如,显示每个作业的节点数量和它们的状态)。通过BatchClient.poolOperations().listPools()
我可以获得有关现有池的详细信息。虽然BatchClient.jobOperations().listJobs()
我还可以检索所有作业的列表,但我不知道如何将作业连接到相应的池 ID:
BatchClient batchClient = BatchClient.open(
new BatchSharedKeyCredentials(baseUrl, accountName, keyValue)
);
batchClient.jobOperations().listJobs(
new DetailLevel.Builder().withFilterClause("state ne 'completed'").build()
).forEach(job -> {
String jobId = job.id();
job.poolInfo().poolId(); // null
job.poolInfo().autoPoolSpecification(); // contains no pool ID
});
因为我使用的是 AutoPools,所以这段代码似乎没有帮助:poolId是null
并且autoPoolSpecification不包含池 ID 或任何其他标识数据(请参阅PoolInformation 文档)。使用 Java API 似乎不可能找出池 ID 和作业 ID 之间的联系,即使 Azure 工具能够显示此信息。
可BatchClient.jobOperations().listJobs()
用于检索池 ID?有没有其他方法可以以编程方式获取池 ID 和作业 ID 之间的连接?
解决方案
推荐阅读
- python - 我在 reducer 输出中得到一个列表列表,而不是成对的值,我不确定在我的代码中要更改什么
- javascript - 为什么 bitwsie AND 操作 00000100000001000001000100 & 11111100000000000000000000 === 0?
- modelsim - Modelsim 显示有关 vmap 命令的未知警告
- azure - Azure 服务总线中的数据库/缓存,用于在其他地方完成的队列中的作业
- webrtc - Nest Battery Cam GenerateWebRtcStream 命令出现 INVALID_ARGUMENT 错误
- azure - Azure Appservice - 禁止 - 尝试停止 Appservice 实例的 w3wp 进程时出现 403 错误
- lua - LUA - 如何阻止脚本运行
- r - 创建具有比例的条形图
- postgresql - TimescaleDB 对比 InfluxDB 到 PLC 日志记录
- javascript - 匹配对象然后计算学生成绩的成绩