标签: azure-log-analytics

Kusto 自定义排序顺序?

如何在 Kusto 中执行自定义排序顺序?

查询示例:

//==================================================//
// Assign variables
//==================================================//
let varStart = ago(2d);
let varEnd = now();
let varStorageAccount = 'stgacctname';
//==================================================//
// Filter table
//==================================================//
StorageBlobLogs
| where TimeGenerated between (varStart .. varEnd)
  and AccountName == varStorageAccount
| sort by OperationName
Run Code Online (Sandbox Code Playgroud)

需要:

  • 我想将各种OperationNamesGetBlobAppendFile等)放入自定义订单中。
  • 就像是: | sort by OperationName['GetBlob'], OperationName['AppendFile'], OperationName asc
  • 理想情况下,我想指定排序依据的值,然后允许 Kusto 使用asc/对剩余的进行排序desc

这可能吗?

azure-log-analytics kql azure-data-explorer

7
推荐指数
1
解决办法
2675
查看次数

具有多个维度的 Azure 日志分析时间表

Azure 新的日志分析查询平台中,您可以查询性能计数器并汇总它们以最终创建一个漂亮的图表。

按照多维文档示例,它说

by 子句中的多个表达式创建多行,每个值组合对应一个行。

我想在他们的示例数据库中查询每台计算机发送和接收的网络字节数。从这个查询开始它应该是这样的

Perf | where TimeGenerated > ago(1d) | where (CounterName == "Bytes Received/sec" or CounterName == "Bytes Sent/sec") | summarize avg(CounterValue) by bin(TimeGenerated, 1h), Computer, CounterName | extend Threshold = 20 | render timechart

问题是Send 和 Received 字节在计算机级别的图形中被分组

如何按照文档中的说明表示多个维度,以便我将Computer X Bytes SendComputer X Bytes Received而不是将它们组合在一起,这没有任何意义?

发送和接收的字节在图中混合

更不用说在以前的版本中这是按预期工作的。

azure azure-log-analytics

6
推荐指数
1
解决办法
3724
查看次数

KQL 分组依据与拖放分组功能的结果相同

在 Azure 门户中使用“监视器”、“日志”功能时,您可以通过将列标题拖放到某个框中来对行进行分组,问题是按“保存”按钮时不会保存此内容。

如何编写生成相同结果的 KQL?按 Column_Name 进行汇总不会产生相同的结果。

azure azure-diagnostics azure-log-analytics kql

6
推荐指数
1
解决办法
2万
查看次数

如何在 Azure AppInsights 中对自定义指标进行百分位数?

我使用 Prometheus 存储性能指标并以百分位数形式查询结果(例如第 95 个百分位数响应时间)。我使用prometheus-net来发出它们。

Azure AppInsights 中的等效项是什么?

我看到 AppInsights/Kusto 中有百分位数函数,但是当我使用 GetMetric("blah").TrackValue(42) 时,它存储 Count、Min、Max、Sum 和 StdDev,这不是我使用的直方图分桶方法到《普罗米修斯》中。

for(int i=0; i < 500; i++) {
  //Write some metrics
  telemetryClient.GetMetric("blah").TrackValue(42); //real data isn't constant
}
Run Code Online (Sandbox Code Playgroud)
customMetrics
| where name == "blah" 
//| summarize avg(value), percentiles(value, 50, 95)  by bin(timestamp, 2m)
Run Code Online (Sandbox Code Playgroud)

这是我用随机值记录的一些数据。值列是总和,这是不正确的,所以我不知道如何正确地对此数据进行百分位数。 在此输入图像描述

azure azure-monitoring azure-application-insights prometheus azure-log-analytics

6
推荐指数
1
解决办法
3813
查看次数

Kusto\KQL - 渲染简单计数值的时间表

我有一个 kql-query,它计算自过去 24 小时以来 Azure 存储中上传的 BLOBS 数量。在 Azure 日志分析中运行时,查询打击会返回预期的数字。

StorageBlobLogs
| where TimeGenerated > ago(1d) and OperationName has "PutBlob" and StatusText contains "success" a
| distinct Uri
| summarize count()
Run Code Online (Sandbox Code Playgroud)

我现在想在时间表中可视化这些信息以获得一些详细视图。尝试将“渲染时间表”添加到查询链中,如下所示

StorageBlobLogs
| where TimeGenerated > ago(1d) and OperationName has "PutBlob" and StatusText contains "success" a
| distinct Uri
| summarize count()
| render timechart
Run Code Online (Sandbox Code Playgroud)

但是,当执行查询时,我收到错误消息;

无法创建可视化 无法创建堆叠条形图,因为您缺少以下类型之一的列:int、long、decimal 或 real

关于如何实现这一点有什么建议吗?

azure-monitoring azure-blob-storage azure-log-analytics kql

6
推荐指数
1
解决办法
1万
查看次数

显示 Kusto 查询计划,如 EXPLAIN

我发现自己通过 Azure Log Analytics 使用 Kusto 查询语言 (KQL),并且正在努力寻找一种方法来获取任何类型的详细执行报告或查询计划。

在 PostgreSQL 中,我用来EXPLAIN生成有关 DBMS 如何执行查询的报告,或者EXPLAIN ANALYZE生成有关查询实际执行情况的报告。KQL中有类似的东西吗?

搜索“kql 查询计划”、“kusto 解释查询”等基本上没有结果,但这可能只是意味着我不知道正确的术语。

azure-monitoring azure-log-analytics kql

6
推荐指数
1
解决办法
1783
查看次数

Azure应用程序见解或日志分析

Azure应用程序见解或日志分析的用例是什么?

我正在使用API​​M和Azure函数,并希望对请求执行日志记录。哪一种是最合适的,应用程序见解或日志分析?

https://docs.microsoft.com/zh-CN/azure/azure-monitor/overview

更新资料

特别是,有关用于APIM的Azure应用程序见解与日志分析的任何信息?

azure azure-application-insights azure-functions azure-log-analytics

5
推荐指数
2
解决办法
3759
查看次数

在长时间运行的 Azure 数据工厂管道上发出警报的方法

我有一些数据工厂管道,当将数据从 blob 复制到 SQL 时,有时可能会运行超过 2 小时。时间段是可变的,但我希望在任何管道运行超过 2 小时时收到通知/警报。

有哪些可能的方法可以做到这一点?

到目前为止我已经尝试过:

  • 探索了可以在其上放置警报规则的 adf 指标。但似乎没有人谈论主动跑步的持续时间。
  • 我希望获得管道的持续时间值,就像我们在 adf.azure.com 的“监视器”选项卡上看到的那样,并使用它来发出某种警报。
  • 我还在想,如果我可以获得管道启动时间,那么也许我可以从当前时间计算总运行时间,并在此基础上添加一些警报。

在此输入图像描述

azure-monitoring azure-data-factory azure-log-analytics

5
推荐指数
1
解决办法
3297
查看次数

应该按应用程序还是按环境使用 Azure Log Analytics 和 Application Insights?

我们有一个基于 Azure 的系统,该系统的复杂性不断增加,我们需要监视事件链并确保它们到达我们期望的位置。

我们有一个本地 Java 应用程序,它将事件发送到 IoT 中心。IoT 中心路由到服务总线队列。我们有更新 Cosmos 数据库、触发其他函数或路由到其他队列的函数。某些函数也可以通过 API 管理实例调用。

在此输入图像描述

我们的函数已经连接到 Application Insights,这里 Application Insights 实例的命名与 Function App 相同(IIRC 这个命名是通过创建 AI 资源的表单建议的)

Application Insights 中的应用程序地图让我倾向于每个环境一个 AI,以获得完整的系统地图。Log Analytics 在每个环境中使用一个日志分析似乎也是合乎逻辑的,以便能够在需要时关联数据。

Log Analytics 和 Application Insights 的正确路径分别是什么?

如果没有我标题中所说的那么明确,那么当我开始使用这些服务时,我需要考虑哪些因素?

azure azure-monitoring azure-application-insights azure-log-analytics

5
推荐指数
1
解决办法
1750
查看次数

从 KQL 访问仪表板的时间范围和粒度

我已使用 KQL 将图表和日志从 Azure Log Analytics 添加到仪表板。我正在使用make-series它,效果很好,但问题如下:

我收到的日志可能不会扩展到仪表板规定的整个时间范围。所以基本上我需要访问开始时间/结束时间(和时间粒度)以覆盖make-series整个时间范围。

例如

logs
| make-series
    P90 = percentile(Elapsed, 90) default = 0,
    Average = avg(Elapsed) default = 0
    // ??? need start/end time to use in from/to
    on TimeGenerated step 1m
Run Code Online (Sandbox Code Playgroud)

azure azure-monitoring azure-log-analytics kql

5
推荐指数
1
解决办法
1257
查看次数