31 lines
912 B
Plaintext
31 lines
912 B
Plaintext
|
|
////////////////////////////////////////////////////////////////////
|
|
v = {
|
|
"timeRangeStart": 2023-06-16T14:44:00Z,
|
|
"timeRangeStop": 2023-06-18T14:44:00Z
|
|
}
|
|
|
|
bucket = "telegraf"
|
|
|
|
////////////////////////////////////////////////////////////////////
|
|
hosts = ${httpHost:json}
|
|
hostsLength = hosts |> length()
|
|
measurement = "nginx_access-logv3"
|
|
from(bucket: "${bucket}")
|
|
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|
|
|> filter(fn: (r) => r["_measurement"] == measurement and (r["_field"] == "request" or r["_field"] == "nginx_host"))
|
|
|> pivot(rowKey:["_time"],
|
|
columnKey: ["_field"],
|
|
valueColumn: "_value")
|
|
|> filter(fn: (r) => if hostsLength>0 then contains(value: r["nginx_host"], set: hosts) else true)
|
|
|> group()
|
|
|> duplicate(column: "request", as: "_value")
|
|
|> group(columns: ["request"])
|
|
|>count()
|
|
|> group()
|
|
|> sort(columns: ["_value"], desc: true)
|
|
|
|
|
|
|
|
|