Azure java sdk Azure数据浏览器度量
如何使用java从“Azure Data Explorer”获取“缓存利用率”指标。是否有任何JAVA SDK可以帮助从“Azure Data Explorer”服务获取度量值?关于此问题,请参考以下代码Azure java sdk Azure数据浏览器度量,azure-java-sdk,Azure Java Sdk,如何使用java从“Azure Data Explorer”获取“缓存利用率”指标。是否有任何JAVA SDK可以帮助从“Azure Data Explorer”服务获取度量值?关于此问题,请参考以下代码 马文 com.azure azure身份 1.2.4 com.azure.resourcemanager azure资源管理器资源 2.2.0 com.azure.resourcemanager azure资源管理器监视器 2.2.0 代码 String clientId=“”; 字符串c
com.azure
azure身份
1.2.4
com.azure.resourcemanager
azure资源管理器资源
2.2.0
com.azure.resourcemanager
azure资源管理器监视器
2.2.0
代码
String clientId=“”;
字符串clientSecret=“”;
字符串=”;
字符串subId=“”;
AzureProfile=新的AzureProfile(租户、子ID、AzureEnvironment.AZURE);
TokenCredential=new ClientSecretCredentialBuilder()
.authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
.TENATID(租户)
.clientId(clientId)
.clientSecret(clientSecret)
.build();
监控管理器管理器=监控管理器
.configure()
.withLogLevel(HttpLogDetailLevel.BODY_和_头)
.认证(凭证、档案);
OffsetDateTime recordDateTime=OffsetDateTime.now();
对于(MetricDefinition MetricDefinition:manager.metricDefinitions().listByResource(“”)
) {
if(metricDefinition.name().localizedValue().equalsIgnoreCase(“缓存利用率”)){
MetricCollection MetricCollection=metricDefinition.defineQuery()
.startingFrom(recordDateTime.minusDays(7))
.endsBefore(recordDateTime)
.加总(“平均”)
.带间隔(持续时间为分钟(5))
.filterByNamespace(“microsoft.kusto/clusters”)
.execute();
System.out.println(“用于“+”+“:”的度量);
System.out.println(“Namespacse:+metricCollection.namespace());
System.out.println(“查询时间:+metricCollection.timespan());
System.out.println(“时间粒度:+metricCollection.interval());
System.out.println(“成本:+metricCollection.Cost());
对于(度量:metricCollection.metrics()){
System.out.println(“\tMetric:+metric.name().localizedValue());
System.out.println(“\t类型:“+metric.type());
System.out.println(“\tUnit:+metric.unit());
System.out.println(“\t时间系列:”);
对于(TimeSeriesElement timeElement:metric.timeseries()){
System.out.println(“\t\tMetadata:”);
对于(MetadataValueInternalMetadata:timeElement.metadatavalues()){
System.out.println(“\t\t\t”+metadata.name().localizedValue()+”:“+metadata.value());
}
System.out.println(“\t\t数据:”);
对于(MetricValue数据:timeElement.data()){
System.out.println(“\t\t\t”+data.timestamp()
+“:(最小值)“+数据最小值()
+“:(最大值)“+data.Max()
+“:(平均值)”+数据平均值()
+“:(总计)”+数据总计()
+“:(Count)”+data.Count());
}
}
}
打破
}
}
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.2.4</version>
</dependency>
<dependency>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-resources</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-monitor</artifactId>
<version>2.2.0</version>
</dependency>
String clientId="";
String clientSecret="";
String tenant="";
String subId="";
AzureProfile profile = new AzureProfile(tenant,subId,AzureEnvironment.AZURE);
TokenCredential credential = new ClientSecretCredentialBuilder()
.authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
.tenantId(tenant)
.clientId(clientId)
.clientSecret(clientSecret)
.build();
MonitorManager manager = MonitorManager
.configure()
.withLogLevel(HttpLogDetailLevel.BODY_AND_HEADERS)
.authenticate(credential,profile);
OffsetDateTime recordDateTime = OffsetDateTime.now();
for (MetricDefinition metricDefinition : manager.metricDefinitions().listByResource("<the resource id of data exploer>")
) {
if(metricDefinition.name().localizedValue().equalsIgnoreCase("Cache utilization")){
MetricCollection metricCollection = metricDefinition.defineQuery()
.startingFrom(recordDateTime.minusDays(7))
.endsBefore(recordDateTime)
.withAggregation("Average")
.withInterval(Duration.ofMinutes(5))
.filterByNamespace("microsoft.kusto/clusters")
.execute();
System.out.println("Metrics for '" + "" + "':");
System.out.println("Namespacse: " + metricCollection.namespace());
System.out.println("Query time: " + metricCollection.timespan());
System.out.println("Time Grain: " + metricCollection.interval());
System.out.println("Cost: " + metricCollection.cost());
for (Metric metric : metricCollection.metrics()) {
System.out.println("\tMetric: " + metric.name().localizedValue());
System.out.println("\tType: " + metric.type());
System.out.println("\tUnit: " + metric.unit());
System.out.println("\tTime Series: ");
for (TimeSeriesElement timeElement : metric.timeseries()) {
System.out.println("\t\tMetadata: ");
for (MetadataValueInner metadata : timeElement.metadatavalues()) {
System.out.println("\t\t\t" + metadata.name().localizedValue() + ": " + metadata.value());
}
System.out.println("\t\tData: ");
for (MetricValue data : timeElement.data()) {
System.out.println("\t\t\t" + data.timestamp()
+ " : (Min) " + data.minimum()
+ " : (Max) " + data.maximum()
+ " : (Avg) " + data.average()
+ " : (Total) " + data.total()
+ " : (Count) " + data.count());
}
}
}
break;
}
}