更改在 Kusto 中使用 make-series 操作生成的日期时间格式

Change datetime format generated with make-series operation in Kusto

简介:

在 Azure 数据资源管理器中有一个 make-series-Operator,它允许我们沿着指定的轴创建一系列指定的聚合值。

哪里有问题:

除了时间戳格式的变化外,运算符工作正常。 例如

let resolution = 1d;
let timeframe = 3d;
let start_ts = datetime_add('second', offset, ago(timeframe));
let end_ts = datetime_add('second', offset, now());
Table
| make-series max(value) default=0 on timestamp from start_ts to end_ts step resolution by col_1, col_2

当前结果:

我得到的结果包含 UTC 时间戳,如下所示

"max_value": [
    -2.69,
    -2.79,
    -2.69
],
"timestamp": [
    "2020-03-29T18:01:08.0552135Z",
    "2020-03-30T18:01:08.0552135Z",
    "2020-03-31T18:01:08.0552135Z"
],

预期结果:

结果应该如下所示

"max_value": [
    -2.69,
    -2.79,
    -2.69
],
"timestamp": [
    "2020-03-29 18:01:08",
    "2020-03-30 18:01:08",
    "2020-03-31 18:01:08"
],

问题:

有什么方法可以将 kusto 中的 make-series 操作中生成的日期时间格式更改为非 UTC 格式。

is there any way to change the datetime format which generated in make-series operation in kusto to be NOT in UTC format.

不清楚你定义的"UTC Format"。 Kusto/ADX uses the ISO 8601 standard,时间戳始终为 UTC。您可以看到在您的原始消息中使用了它,例如2020-03-29T18:01:08.0552135Z.

如果出于某种原因,您希望在动态列(数组或 属性 包)中以不同的格式显示日期时间值,您可以使用 mv-applyformat_datetime():

print arr = dynamic(
[
    "2020-03-29T18:01:08.0552135Z",
    "2020-03-30T18:01:08.0552135Z",
    "2020-03-31T18:01:08.0552135Z"
])
| mv-apply arr on (
    summarize make_list(format_datetime(todatetime(arr), "yyyy-MM-dd HH:mm:ss"))
)