https://github.com/leoverto/telegraf-apc-ups-status
Python script to prepare APC UPS status for telegraf/influxdb
https://github.com/leoverto/telegraf-apc-ups-status
apc influxdb python telegraf ups
Last synced: 7 days ago
JSON representation
Python script to prepare APC UPS status for telegraf/influxdb
- Host: GitHub
- URL: https://github.com/leoverto/telegraf-apc-ups-status
- Owner: LeoVerto
- Created: 2019-04-20T19:59:25.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-20T21:36:34.000Z (about 7 years ago)
- Last Synced: 2025-02-27T10:36:28.653Z (over 1 year ago)
- Topics: apc, influxdb, python, telegraf, ups
- Language: Python
- Homepage:
- Size: 4.88 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Python APC UPS data collector for telegraf
This is a port of this PHP script by Walter Nasich: https://bitbucket.org/snippets/wnasich/7Kg89/
## Usage
Create `/usr/local/sbin/apc_collector.sh` with the following content:
#!/bin/bash
apcaccess | python3 /path/to/apc2telegraf.py
Make it executable:
$ chmod a+x /usr/local/sbin/apc_collector.sh
Edit your telegraf.conf, add an 'exec' input:
[[inputs.exec]]
commands = ["/usr/local/bin/apc_collector.sh"]
data_format = "influx"
Restart telegraf. Data will be collected under the measurement 'ups_apc'.
## Collecting UPS events
If you want to collect UPS events:
* Add this to /etc/rc.local:
`$ touch /tmp/upsapcevents.log`
* Add to /etc/apcupsd/apccontrol at line 32 the line below:
echo "ups_apc_event,ups_name=$1 status=\"$2\" `date +%s%N`" >> /tmp/upsapcevents.log
* Enable inputs.tail at /etc/telegraf/telegraf.conf
Spec next settings:
files = ["/tmp/upsapcevents.log"]
from_beginning = false
data_format = "influx"