InfluxDB v2.1 - 任务已执行但目标存储桶中没有写入任何内容

InfluxDB v2.1 - Task executed but nothing wrote in destination bucket

我正在使用 InfluxDB v2.1。

我有这个任务:

option task = {
   name: "DOWNSAMPLE APRILIA UTILITIES",
   cron: "0 * * * *",
}

from(bucket: "homeassistant-aprilia")
   |> range(start: -2h, stop: -1h)
   |> filter(fn: (r) => r["_measurement"] == "kWh")
   |> filter(fn: (r) => r["_field"] == "value")
   |> filter(fn: (r) => r.entity_id == "shellyem_c45bbe5fed52_channel_1_energy")
   |> aggregateWindow(every: 1h, fn: max, createEmpty: false)
   |> difference()
   |> to(bucket: "downsample-utility-aprilia", org: "sineverba")

它每小时执行一次,但是...它不会在目标存储桶中写入任何内容。

我有所有成功日志,但我的目标存储桶中没有。

如果我直接在源存储桶中启动任务,我可以看到我感兴趣的值。

其他,如果我不省略“to”值,从桶中手动启动它写入数据。

为什么?

有时 InfluxDB 无法写入但不响应错误。在那些情况下,成功状态并不意味着数据已写入。这意味着数据已被接受写入,但稍后可能会失败。尝试检查 _monitoring 桶。该存储桶存储被拒绝的数据点和错误消息。

例如,在我的例子中,这是模式不匹配。预期有一种类型,但收到了另一种类型。我使用的是隐式模式,这意味着该模式是由 InfluxDB 本身根据我放置在那里的数据决定的。我通过使模式明确来解决这个问题。在这种情况下,InfluxDB returns 在写入时立即出错。

最后,我现在用stop解决了:

option task = {
    name: "DOWNSAMPLE APRILIA UTILITIES",
    cron: "0 * * * *",
}

option entity_id = "shellyem_c45bbe5fed52_channel_1_energy"

data = from(bucket: "homeassistant-aprilia")
    |> range(start: -2h, stop: now())
    |> filter(fn: (r) => r["_measurement"] == "kWh")
    |> filter(fn: (r) => r["_field"] == "value")
    |> filter(fn: (r) => r.entity_id == entity_id)
    |> aggregateWindow(every: 1h, fn: last, createEmpty: false)
    |> difference()
    |> to(bucket: "downsample-utilities-aprilia", org: "sineverba")