首页 > 解决方案 > cron 作业每小时定期失败

问题描述

我阅读了大量关于 cron 的问答,但我无法理解我所面临的异常情况。我有一个运行 3 个 cronjobs 的 Raspberry Pi:

* * * * * /home/pi/heartbeatgenerator.sh 2>&1
*/5 * * * * /home/pi/extase2influx/extase2influx.sh 2>&1
*/5 * * * * /home/pi/ows2influx/ows2influx.sh 2>&1

第一个是一个简单的脚本,它通过 curl 调用每分钟将 0 或 1 交替写入数据库 (InfluxDB)。这个想法是检查 RPi 是否与数据库有定期连接并正常运行。它看起来像这样:

value=$(($( date +"%M")%2))      
curl -i -XPOST "https://[REDACTED].influxcloud.net:8086/write?db=[REDACTED]&u=[REDACTED]&p=[REDACTED]&precision=s" \
         --data "heartbeat $HOSTNAME=$value"

第二个脚本是查询一些传感器并将值发布到同一个数据库。第三个脚本与第二个脚本基本相同,但第一行有一个“sleep 10s”命令(以避免 CPU/网络使用率飙升)。

现在,除了第一个脚本(心跳)在第 8 分钟和第 9 分钟每小时定期失败之外,一切都运行良好。它失败意味着没有数据被发布到数据库中。这是数据库转储的一部分:

1/7/2019 1:05:06.000000000 PM,1
1/7/2019 1:06:01.000000000 PM,0
1/7/2019 1:07:01.000000000 PM,1
1/7/2019 1:10:01.000000000 PM,0
1/7/2019 1:11:01.000000000 PM,1
1/7/2019 1:12:02.000000000 PM,0

这是视觉上的样子

这是日志文件的一部分:

Jan  7 13:05:01 RPi CRON[6346]: (pi) CMD (/home/pi/ows2influx/ows2influx.sh 2>&1)
Jan  7 13:05:01 RPi CRON[6347]: (pi) CMD (/home/pi/extase2influx/extase2influx.sh 2>&1)
Jan  7 13:05:01 RPi CRON[6348]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:05:01 RPi CRON[6334]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:05:11 RPi pi: /home/pi/extase2influx/extase2influx.sh INFO: Database entry successfull. Written 1520 bytes
Jan  7 13:05:11 RPi CRON[6333]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:05:12 RPi pi: /home/pi/ows2influx/ows2influx.sh INFO-OWS: Database entry successfull. Written 1456 bytes
Jan  7 13:05:12 RPi CRON[6332]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:05:16 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:05:20 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:05:24 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:06:01 RPi CRON[6566]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:06:01 RPi CRON[6562]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:07:01 RPi CRON[6579]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:07:07 RPi CRON[6575]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:07:54 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:07:58 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:08:01 RPi CRON[6608]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:08:02 RPi CRON[6604]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:08:02 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:09:00 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:09:01 RPi CRON[6636]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:09:01 RPi CRON[6632]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:09:04 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:09:08 RPi dhcpcd[520]: wlan0: Router Advertisement from fe80::21d:aaff:feb0:8f20
Jan  7 13:10:01 RPi CRON[6672]: (pi) CMD (/home/pi/extase2influx/extase2influx.sh 2>&1)
Jan  7 13:10:01 RPi CRON[6673]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:10:01 RPi CRON[6674]: (pi) CMD (/home/pi/ows2influx/ows2influx.sh 2>&1)
Jan  7 13:10:06 RPi pi: /home/pi/extase2influx/extase2influx.sh INFO: Database entry successfull. Written 1490 bytes
Jan  7 13:10:06 RPi CRON[6661]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:10:07 RPi CRON[6662]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:10:12 RPi pi: /home/pi/ows2influx/ows2influx.sh INFO-OWS: Database entry successfull. Written 1376 bytes
Jan  7 13:10:12 RPi CRON[6660]: (CRON) info (No MTA installed, discarding output)
Jan  7 13:11:01 RPi CRON[6868]: (pi) CMD (/home/pi/heartbeatgenerator.sh 2>&1)
Jan  7 13:11:07 RPi CRON[6864]: (CRON) info (No MTA installed, discarding output)

我没有看到任何奇怪的东西,也没有看到 cronjob heartbeat.sh 在每小时的第 8 分钟和第 9 分钟失败的任何原因。

你们有些人有什么线索吗?

标签: cron

解决方案


推荐阅读