I have Kapacitor 1.3 and a very simple task:
root@994d6ddd4780:/# kapacitor show TEST
ID: TEST
Error:
Template:
Type: stream
Status: enabled
Executing: true
Created: 03 Nov 17 07:35 UTC
Modified: 03 Nov 17 08:03 UTC
LastEnabled: 03 Nov 17 08:03 UTC
Databases Retention Policies: [“syslog”.“default”]
TICKscript:
stream
|from()
.database(‘syslog’)
.measurement(‘kafka_logs’)
|log()
.level(‘DEBUG’)
|alert()
.crit(lambda: TRUE)
.log(‘/tmp/events.log’)
DOT:
digraph TEST {
graph [throughput=“0.00 points/s”];
stream0 [avg_exec_time_ns=“0s” errors=“0” working_cardinality=“0” ];
stream0 → from1 [processed=“0”];
from1 [avg_exec_time_ns=“0s” errors=“0” working_cardinality=“0” ];
from1 → log2 [processed=“0”];
log2 [avg_exec_time_ns=“0s” errors=“0” working_cardinality=“0” ];
log2 → alert3 [processed=“0”];
alert3 [alerts_triggered=“0” avg_exec_time_ns=“0s” crits_triggered=“0” errors=“0” infos_triggered=“0” oks_triggered=“0” warns_triggered=“0” working_cardinality=“0” ];
}
Here the kapacitor stats relevant to my syslog InfluxDb database:
root@994d6ddd4780:/# kapacitor stats ingress | grep syslog
syslog autogen kafka_logs 12
Here my kapacitor.conf file
hostname = “localhost”
data_dir = “/var/lib/kapacitor”
skip-config-overrides = false
default-retention-policy = “”
[http]
bind-address = “:9092”
auth-enabled = false
log-enabled = true
write-tracing = false
pprof-enabled = false
https-enabled = false
https-certificate = “/etc/ssl/kapacitor.pem”
shutdown-timeout = “10s”
shared-secret = “”
[replay]
dir = “/var/lib/kapacitor/replay”
[storage]
boltdb = “/var/lib/kapacitor/kapacitor.db”
[task]
dir = “/var/lib/kapacitor/tasks”
snapshot-interval = “1m0s”
[[influxdb]]
enabled = true
name = “default”
default = false
urls = [“http://influxdb:8086”]
username = “”
password = “”
ssl-ca = “”
ssl-cert = “”
ssl-key = “”
insecure-skip-verify = false
timeout = “0s”
disable-subscriptions = false
subscription-protocol = “http”
kapacitor-hostname = “”
http-port = 0
udp-bind = “”
udp-buffer = 1000
udp-read-buffer = 0
startup-timeout = “5m0s”
subscriptions-sync-interval = “1m0s”
[influxdb.excluded-subscriptions]
_kapacitor = [“autogen”]
[logging]
file = “/var/log/kapacitor/kapacitor.log”
level = “DEBUG”
[config-override]
enabled = true
[collectd]
enabled = false
bind-address = “:25826”
database = “collectd”
retention-policy = “”
batch-size = 5000
batch-pending = 10
batch-timeout = “10s”
read-buffer = 0
typesdb = “/usr/share/collectd/types.db”
[opentsdb]
enabled = false
bind-address = “:4242”
database = “opentsdb”
retention-policy = “”
consistency-level = “one”
tls-enabled = false
certificate = “/etc/ssl/influxdb.pem”
batch-size = 1000
batch-pending = 5
batch-timeout = “1s”
log-point-errors = true
[alerta]
enabled = true
url = “http://192.168.56.103:8090/api”
token = “”
token-prefix = “”
environment = “Production”
origin = “Kapacitor”
[hipchat]
enabled = false
url = “”
token = “”
room = “”
global = false
state-changes-only = false
[opsgenie]
enabled = false
api-key = “”
url = “https://api.opsgenie.com/v1/json/alert”
recovery_url = “https://api.opsgenie.com/v1/json/alert/note”
global = false
[pagerduty]
enabled = false
url = “https://events.pagerduty.com/generic/2010-04-15/create_event.json”
service-key = “”
global = false
[smtp]
enabled = false
host = “localhost”
port = 25
username = “”
password = “”
no-verify = false
global = false
state-changes-only = false
from = “”
idle-timeout = “30s”
[sensu]
enabled = false
addr = “”
source = “Kapacitor”
[slack]
enabled = false
url = “”
channel = “”
username = “kapacitor”
icon-emoji = “”
global = false
state-changes-only = false
[talk]
enabled = false
url = “”
author_name = “”
[telegram]
enabled = false
url = “https://api.telegram.org/bot”
token = “”
chat-id = “”
parse-mode = “”
disable-web-page-preview = false
disable-notification = false
global = false
state-changes-only = false
[victorops]
enabled = false
api-key = “”
routing-key = “”
url = “https://alert.victorops.com/integrations/generic/20131114/alert”
global = false
[kubernetes]
enabled = false
in-cluster = false
token = “”
ca-path = “”
namespace = “”
[reporting]
enabled = true
url = “https://usage.influxdata.com”
[stats]
enabled = true
stats-interval = “10s”
database = “_kapacitor”
retention-policy = “autogen”
timing-sample-rate = 0.1
timing-movavg-size = 1000
[udf]
[deadman]
interval = “10s”
threshold = 0.0
id = “{{ .Group }}:NODE_NAME for task ‘{{ .TaskName }}’”
message = “{{ .ID }} is {{ if eq .Level "OK" }}alive{{ else }}dead{{ end }}: {{ index .Fields "emitted" | printf "%0.3f" }} points/INTERVAL.”
global = false
when I manually insert a new measurement into the syslog database I get:
[httpd] 172.18.0.3 - - [03/Nov/2017:08:04:11 +0000] “POST /write?consistency=&db=syslog&precision=ns&rp=autogen HTTP/1.1” 204 0 “-” “InfluxDBClient” 93325aad-c06d-11e7-83fb-000000000000 68
and from time to time I get:
tail: unrecognized file system type 0x794c7630 for ‘/var/log/kapacitor/kapacitor.log’. please report this to bug-coreutils@gnu.org. reverting to polling
Please help me understand how to debug kapacitor tasks.