Compare commits

..

2 Commits

Author SHA1 Message Date
Max
71c62845d8 Improve docs and inline help 2024-03-26 10:12:21 +01:00
Max
bd6b57d1ed Add host/port to top config 2024-03-26 09:59:24 +01:00
3 changed files with 36 additions and 12 deletions

View File

@ -1,10 +1,29 @@
# SolarEdge Cloud API Exporter
# SolarEdge Inverter Exporter
## Configuration
## Local Modbus/TCP Exporter
Edit the script and put your API key, site id and inverter serial number
Usage:
```
solaredge_modbus.py [-d] [-l LISTEN] [-p PORT] HOST [PORT]
Prometheus exporter for SolarEdge inverters
positional arguments:
HOST Inverter Network Address
PORT Inverter Modbus/TCP port (default: 1502)
options:
-h, --help show this help message and exit
-d, --debug Enable debug info in HTTP answers (default: False)
-l LISTEN, --listen LISTEN
Address to bind for the HTTP server (default: localhost)
-p PORT, --listen-port PORT
Port of the HTTP server (default: 9150)
```
## Cloud API Exporter
Edit the `solaredge_api` script and put your API key, site id and inverter serial number
Edit the listening host and port if needed
## Usage
Run the script as a service, add the URL to prometheus.

View File

@ -12,6 +12,9 @@ site_id = 4143190
inverter = '7B0E5700-E0'
listen = 'localhost'
port = 9150
endpoint = "https://monitoringapi.solaredge.com/"
query_delta = datetime.timedelta(minutes=20)
@ -172,7 +175,7 @@ def metrics():
return format_metrics(collect())
def main():
bottle.run(host='localhost', port=9150)
bottle.run(host=listen, port=port)
if __name__ == '__main__':

View File

@ -59,12 +59,14 @@ def export(d, m):
def main():
parser = argparse.ArgumentParser(prog='solaredge_modbus.py', description='SolarEdge Modbus Exporter')
parser.add_argument('-d', '--debug', action='store_true')
parser.add_argument('-b', '--bind', default='localhost')
parser.add_argument('-p', '--bind-port', default='9150')
parser.add_argument('host')
parser.add_argument('port', nargs='?', default=1502)
parser = argparse.ArgumentParser(prog='solaredge_modbus.py',
description='Prometheus exporter for SolarEdge inverters',
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument('-d', '--debug', action='store_true', help="Enable debug info in HTTP answers")
parser.add_argument('-l', '--listen', default='localhost', help="Address to bind for the HTTP server")
parser.add_argument('-p', '--listen-port', default='9150', help="Port of the HTTP server")
parser.add_argument('host', help="Network address of the inverter to monitor")
parser.add_argument('port', nargs='?', default=1502, help="Inverter Modbus/TCP port")
args = parser.parse_args()