Energon-Prometheus-exporter


NameEnergon-Prometheus-exporter JSON
Version 0.0.5 PyPI version JSON
download
home_page
SummaryEnergon is a Prometheus compliant system monitoring tools, it focuses on the energy consumption and resource usage in constrained devices but it integrates reporting tools for desktop machine, too.
upload_time2023-07-18 23:13:47
maintainer
docs_urlNone
author
requires_python>=3.7
license
keywords
VCS
bugtrack_url
requirements prometheus_client PyBluez
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <table>
    <tr>
        <td>
            <h1>Energon_Prometheus_exporter</h1>
        </td>
        <td>
            <img style="margin-left:1rem;" src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/38/Prometheus_software_logo.svg/1200px-Prometheus_software_logo.svg.png"  width="10%">
        </td>
    </tr>
</table>

Energon is a Prometheus [https://prometheus.io/] compliant system monitoring tools, it focuses on the energy consumption and resource usage in constrained devices but it integrates reporting tools for desktop machine, too.

## Currently supported models:

- Jetson Nano Dev Kit [here](https://developer.nvidia.com/embedded/jetson-nano-developer-kit);
- Jetson Xavier NX Dev Kit [here](https://developer.nvidia.com/embedded/learn/get-started-jetson-xavier-nx-devkit); 
- Jetson Xavier NX Seed Studio [here](https://www.seeedstudio.com/Jetson-20-1-H1-p-5328.html);
- Jetson Orin Dev Kit [here](https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html);
- USB Tester UM25C USB Meter Tester [here](https://www.amazon.com/Bluetooth-Voltmeter-Multimeter-Resistance-Impedance/dp/B07PZRSYXD);
- Linux x86 architecture based systems.

### Screenshots:
![Energon Grafana Dashboard](https://raw.githubusercontent.com/MatteoMendula/Energon_Prometheus_exporter/main/images/energon_screen1.png)
![Energon Grafana Dashboard](https://raw.githubusercontent.com/MatteoMendula/Energon_Prometheus_exporter/main/images/energon_screen2.png)

### Usage:
- Install prometheus [https://prometheus.io/docs/prometheus/latest/installation/];
- Install required python packages: ``` pip3 install -r requirements.txt ```
- Run: ``` sudo python3 energon.py ```

The application requires sudo privileges to access to some system files.
You can still run the application without sudo privileges but some metrics will not be available.

## Currently supported features:
All metrics names are compliat with prometheus specifications as described in [https://prometheus.io/docs/practices/naming/].

### Energy metrics:
- energon_device_info: device information;
- energon_total_in_power_mW: current total power consumption in milliwatts;
- energon_cpu_in_power_mW: current cpu power consumption in milliwatts;
- energon_gpu_in_power_mW: current gpu power consumption in milliwatts;
- energon_total_in_voltage_mV: current total voltage in millivolts;
- energon_cpu_in_voltage_mV: current cpu voltage in millivolts;
- energon_gpu_in_voltage_mV: current gpu voltage in millivolts;
- energon_battery_percentage: current battery percentage.

### USB Tester UM25C USB Meter Tester metrics:
N.B. Only if real sensor is connected!
- energon_total_actual_watts: total actual power consumption in watts;
- energon_total_actual_volts: total actual voltage in volts;
- energon_total_actual_amps: total actual current in amps.

### Network metrics:
For each interface_name
- network_metrics_[interface_name]_rx_packets: received packets;
- network_metrics_[interface_name]_rx_bytes: received bytes;
- network_metrics_[interface_name]_rx_errors: received errors;
- network_metrics_[interface_name]_rx_dropped: received dropped packets;
- network_metrics_[interface_name]_tx_packets: transmitted packets;
- network_metrics_[interface_name]_tx_bytes: trasmitted bytes;
- network_metrics_[interface_name]_tx_errors: transmitted errors;
- network_metrics_[interface_name]_tx_dropped: transmitted dropped packets.

### Cpu usage:
For each core_number
- energon_cpu_[core_number]_MHz: cpu frequency in MHz for core [core_number];
- energon_cpu_[core_number]_usage_percentage: CPU usage as % for core [core_number].
Total
- energon_cpu_total_usage_percentage: total CPU usage as %.

### Storage:
For each available [storage_device]
- energon_storage_[storage_device]_total_bytes: total bytes for storage [storage_device];
- energon_storage_[storage_device]_used_bytes: used bytes for storage [storage_device];
- energon_storage_[storage_device]_available_bytes: available bytes for storage [storage_device];
- energon_storage_[storage_device]_percent_used_percentage: storage usage percentage for storage [storage_device].
Total
- energon_storage_total_bytes: total storage in bytes;
- energon_storage_used_bytes: total used storage in bytes;
- energon_storage_available_bytes: total available storage in bytes;
- energon_storage_percent_used_percentage: Storage usage percentage.

### Ram usage:
- energon_ram_total_bytes: total ram in bytes;
- energon_ram_used_bytes: total used ram in bytes;
- energon_ram_available_bytes: total available ram in bytes;
- energon_ram_used_percentage: ram usage percentage.

### GPU metrics:
- energon_gpu_total_usage_percentage: total GPU usage as %.

### Temperature metrics:
For each available [temperature_sensor]
- energon_temperature_[temperature_sensor]_mC: temperature in milliCelsius for sensor [temperature_sensor].




            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "Energon-Prometheus-exporter",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "",
    "author_email": "Matteo Mendula <mattemendu@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/9f/f0/ec2bfc25a6b256b2692ced0e31b041739a20b73453e8e4f4899067886d07/Energon_Prometheus_exporter-0.0.5.tar.gz",
    "platform": null,
    "description": "<table>\n    <tr>\n        <td>\n            <h1>Energon_Prometheus_exporter</h1>\n        </td>\n        <td>\n            <img style=\"margin-left:1rem;\" src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/3/38/Prometheus_software_logo.svg/1200px-Prometheus_software_logo.svg.png\"  width=\"10%\">\n        </td>\n    </tr>\n</table>\n\nEnergon is a Prometheus [https://prometheus.io/] compliant system monitoring tools, it focuses on the energy consumption and resource usage in constrained devices but it integrates reporting tools for desktop machine, too.\n\n## Currently supported models:\n\n- Jetson Nano Dev Kit [here](https://developer.nvidia.com/embedded/jetson-nano-developer-kit);\n- Jetson Xavier NX Dev Kit [here](https://developer.nvidia.com/embedded/learn/get-started-jetson-xavier-nx-devkit); \n- Jetson Xavier NX Seed Studio [here](https://www.seeedstudio.com/Jetson-20-1-H1-p-5328.html);\n- Jetson Orin Dev Kit [here](https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html);\n- USB Tester UM25C USB Meter Tester [here](https://www.amazon.com/Bluetooth-Voltmeter-Multimeter-Resistance-Impedance/dp/B07PZRSYXD);\n- Linux x86 architecture based systems.\n\n### Screenshots:\n![Energon Grafana Dashboard](https://raw.githubusercontent.com/MatteoMendula/Energon_Prometheus_exporter/main/images/energon_screen1.png)\n![Energon Grafana Dashboard](https://raw.githubusercontent.com/MatteoMendula/Energon_Prometheus_exporter/main/images/energon_screen2.png)\n\n### Usage:\n- Install prometheus [https://prometheus.io/docs/prometheus/latest/installation/];\n- Install required python packages: ``` pip3 install -r requirements.txt ```\n- Run: ``` sudo python3 energon.py ```\n\nThe application requires sudo privileges to access to some system files.\nYou can still run the application without sudo privileges but some metrics will not be available.\n\n## Currently supported features:\nAll metrics names are compliat with prometheus specifications as described in [https://prometheus.io/docs/practices/naming/].\n\n### Energy metrics:\n- energon_device_info: device information;\n- energon_total_in_power_mW: current total power consumption in milliwatts;\n- energon_cpu_in_power_mW: current cpu power consumption in milliwatts;\n- energon_gpu_in_power_mW: current gpu power consumption in milliwatts;\n- energon_total_in_voltage_mV: current total voltage in millivolts;\n- energon_cpu_in_voltage_mV: current cpu voltage in millivolts;\n- energon_gpu_in_voltage_mV: current gpu voltage in millivolts;\n- energon_battery_percentage: current battery percentage.\n\n### USB Tester UM25C USB Meter Tester metrics:\nN.B. Only if real sensor is connected!\n- energon_total_actual_watts: total actual power consumption in watts;\n- energon_total_actual_volts: total actual voltage in volts;\n- energon_total_actual_amps: total actual current in amps.\n\n### Network metrics:\nFor each interface_name\n- network_metrics_[interface_name]_rx_packets: received packets;\n- network_metrics_[interface_name]_rx_bytes: received bytes;\n- network_metrics_[interface_name]_rx_errors: received errors;\n- network_metrics_[interface_name]_rx_dropped: received dropped packets;\n- network_metrics_[interface_name]_tx_packets: transmitted packets;\n- network_metrics_[interface_name]_tx_bytes: trasmitted bytes;\n- network_metrics_[interface_name]_tx_errors: transmitted errors;\n- network_metrics_[interface_name]_tx_dropped: transmitted dropped packets.\n\n### Cpu usage:\nFor each core_number\n- energon_cpu_[core_number]_MHz: cpu frequency in MHz for core [core_number];\n- energon_cpu_[core_number]_usage_percentage: CPU usage as % for core [core_number].\nTotal\n- energon_cpu_total_usage_percentage: total CPU usage as %.\n\n### Storage:\nFor each available [storage_device]\n- energon_storage_[storage_device]_total_bytes: total bytes for storage [storage_device];\n- energon_storage_[storage_device]_used_bytes: used bytes for storage [storage_device];\n- energon_storage_[storage_device]_available_bytes: available bytes for storage [storage_device];\n- energon_storage_[storage_device]_percent_used_percentage: storage usage percentage for storage [storage_device].\nTotal\n- energon_storage_total_bytes: total storage in bytes;\n- energon_storage_used_bytes: total used storage in bytes;\n- energon_storage_available_bytes: total available storage in bytes;\n- energon_storage_percent_used_percentage: Storage usage percentage.\n\n### Ram usage:\n- energon_ram_total_bytes: total ram in bytes;\n- energon_ram_used_bytes: total used ram in bytes;\n- energon_ram_available_bytes: total available ram in bytes;\n- energon_ram_used_percentage: ram usage percentage.\n\n### GPU metrics:\n- energon_gpu_total_usage_percentage: total GPU usage as %.\n\n### Temperature metrics:\nFor each available [temperature_sensor]\n- energon_temperature_[temperature_sensor]_mC: temperature in milliCelsius for sensor [temperature_sensor].\n\n\n\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Energon is a Prometheus compliant system monitoring tools, it focuses on the energy consumption and resource usage in constrained devices but it integrates reporting tools for desktop machine, too.",
    "version": "0.0.5",
    "project_urls": {
        "Bug Tracker": "https://github.com/MatteoMendula/Energon_Prometheus_exporter/issues",
        "Homepage": "https://github.com/MatteoMendula/Energon_Prometheus_exporter"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b1c8526a584c819fe76a6c5415663350386785f8e9f6b100103848ba5d4589e3",
                "md5": "238b3ea97bd9b0c9e54c4cf5faaeba43",
                "sha256": "19b0fa31fca28f242e5d5326c6c32b6456a8c0457d9445df65158b58b817d51b"
            },
            "downloads": -1,
            "filename": "Energon_Prometheus_exporter-0.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "238b3ea97bd9b0c9e54c4cf5faaeba43",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 19900,
            "upload_time": "2023-07-18T23:13:45",
            "upload_time_iso_8601": "2023-07-18T23:13:45.516626Z",
            "url": "https://files.pythonhosted.org/packages/b1/c8/526a584c819fe76a6c5415663350386785f8e9f6b100103848ba5d4589e3/Energon_Prometheus_exporter-0.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9ff0ec2bfc25a6b256b2692ced0e31b041739a20b73453e8e4f4899067886d07",
                "md5": "65e47d6aee98b6ed5a46d1f435b4bcf1",
                "sha256": "5a60d67cb451ab3cfbce806b09f2ae2dcfa8aefb3e6ccf16acdf2b0607eef28f"
            },
            "downloads": -1,
            "filename": "Energon_Prometheus_exporter-0.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "65e47d6aee98b6ed5a46d1f435b4bcf1",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 14931,
            "upload_time": "2023-07-18T23:13:47",
            "upload_time_iso_8601": "2023-07-18T23:13:47.112079Z",
            "url": "https://files.pythonhosted.org/packages/9f/f0/ec2bfc25a6b256b2692ced0e31b041739a20b73453e8e4f4899067886d07/Energon_Prometheus_exporter-0.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-18 23:13:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MatteoMendula",
    "github_project": "Energon_Prometheus_exporter",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "prometheus_client",
            "specs": [
                [
                    "==",
                    "0.17.0"
                ]
            ]
        },
        {
            "name": "PyBluez",
            "specs": [
                [
                    "==",
                    "0.30"
                ]
            ]
        }
    ],
    "lcname": "energon-prometheus-exporter"
}
        
Elapsed time: 0.49099s