{"id":16318248,"url":"https://github.com/kos-v/sensors-informer","last_synced_at":"2025-09-01T08:09:32.782Z","repository":{"id":57644257,"uuid":"432484284","full_name":"kos-v/sensors-informer","owner":"kos-v","description":"Daemon for checking CPU temperature sensors and sending notifications to channels (notify-send, smtp, telegram)","archived":false,"fork":false,"pushed_at":"2023-01-22T11:13:50.000Z","size":658,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-17T05:37:37.449Z","etag":null,"topics":["lm-sensors","notification","notify-send","sensors","smtp","telegram"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kos-v.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-11-27T14:35:07.000Z","updated_at":"2024-02-07T05:26:30.000Z","dependencies_parsed_at":"2023-02-12T15:45:59.129Z","dependency_job_id":null,"html_url":"https://github.com/kos-v/sensors-informer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/kos-v/sensors-informer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kos-v%2Fsensors-informer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kos-v%2Fsensors-informer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kos-v%2Fsensors-informer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kos-v%2Fsensors-informer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kos-v","download_url":"https://codeload.github.com/kos-v/sensors-informer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kos-v%2Fsensors-informer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273093465,"owners_count":25044437,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lm-sensors","notification","notify-send","sensors","smtp","telegram"],"created_at":"2024-10-10T22:22:55.174Z","updated_at":"2025-09-01T08:09:32.756Z","avatar_url":"https://github.com/kos-v.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sensors informer\n\nThis service checks data from lm_sensors (Linux monitoring sensors) and\nsends notifications when critical indicators are reached.\n\n## Building, installation, etc\n\n### Compilation\n\nTo compile, you must have installed Go at least version 16.\n\n1. `git clone https://github.com/kos-v/sensors-informer.git`\n\n2. `cd sensors-informer`\n\n3. `make`\n\n### Installation\n\nYou can install this service and the global configuration file to the system directory.\n\nRun (you may need root-rights): `make install`\n\n### Uninstallation\n\nTo uninstall run (you may need root-rights): `make uninstall`\n\n## Configuring\n\nTo start the service, you need a configuration file, a template of which is in the `./etc/conf/` repository folder. When installing the service to the system directory, the template will be copied to the directory `/etc/sensors-informer`, after which you need to configure the necessary channels and other parameters.  \n\nIt is also possible to load a local config file, for this put the config in the same directory with the executable file.  \n\nIn addition, you can pass the path to the config via the `-config=/path/config.yml` argument when starting the service.\n\nOnly one config can be loaded and with this priority:\n\n1. Specific config passed via command line argument  `-config=/path/config.yml`.  \n2. Local config: `./config.yml`.  \n3. Global config: `/etc/sensors-informer/config.yml`\n\n### Description of configuration parameters\n\n```yaml\n# lm_sensors options\nlmSensors:\n  # Path to the \"sensors\" command\n  command: sensors\n\n# List of channels to which you can send a notification.\n# Enabling/disabling a channel is controlled by the \"enable\" parameter, which by default is false.\nchannels:\n  # Sends a notification to a file, the path to which is specified in the \"path\" parameter\n  # Can be used, for example, when testing, debugging or other cases.\n  file:\n    # Enable/disable\n    enable: true\n    # The path to a file\n    path: ./notifications.out\n  # Sends a notification to the notify-send program, which is often installed in gnome\n  # and other graphical unix-shells on a desktop.\n  # See https://manpages.ubuntu.com/manpages/xenial/man1/notify-send.1.html\n  notifySend:\n    # Enable/disable\n    enable: false\n    # Path to the \"notify-send\" command\n    command: notify-send\n    # Specifies the urgency level (low, normal, critical)\n    # See notify-send documentation.\n    urgency: critical\n    # Specifies the timeout in milliseconds at which to expire the notification.\n    # See notify-send documentation.\n    expireTime: 10\n    # Specifies basic extra data to pass. Valid types are int, double, string and byte.\n    # See notify-send documentation.\n    hint:\n  # Sends a notification to a email via smtp\n  smtp:\n    # Enable/disable\n    enable: false\n    # Username for authentication\n    username: sender@example.local\n    # Password for authentication\n    password: \"password\"\n    # Connection SMTP host\n    host: smtp.example.local\n    # Connection port\n    port: 465\n    # Sender data\n    from:\n      # Sender's email address\n      email: sender@example.local\n      # Sender name\n      name: Sensors Informer\n    # List of email recipients\n    to: [recipient@example.local]\n    # Encryption type. Valid values: ssl, tls, starttls.\n    encryption: ssl\n    # TLS encryption parameters\n    tls:\n      # InsecureSkipVerify controls whether a client verifies the server's certificate chain and host name.\n      # If InsecureSkipVerify is true, TLS  accepts any certificate presented by the server and any host name in that certificate.\n      # In this mode, TLS is susceptible to machine-in-the-middle attacks unless custom verification is used.\n      insecureSkipVerify: false\n      # ServerName is used to verify the hostname on the returned certificates unless InsecureSkipVerify is given.\n      # It is also included in the client's handshake to support virtual hosting unless it is an IP address.\n      serverName:\n  # Sends a notification to your telegram bot\n  telegramBot:\n    # Enable/disable\n    enable: false\n    # The token that you received when creating a bot through @BotFather\n    token: \"0000000000:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"\n    # The id of a chat that you initiated with your bot.\n    # The chat ID can only be obtained by calling the telegram api method: https://api.telegram.org/bot{token}/getUpdates\n    # where, {token} is a token issued when creating a bot through @BotFather.\n    chatId: 000000000\n\n# Sensors options\nsensors:\n  # Temperature check interval in seconds\n  pollingInterval: 10\n  # Temperature sensor options\n  temperature:\n    # Temperature at which a notification will be sent\n    critical: 80\n    # The unit of measure for the critical parameter. Default: celsius.\n    # Valid options: \"c\" (celsius), \"f\" (fahrenheit).\n    unit: c\n\n# Notification options\nreport:\n  # Format of notification\n  format:\n    # The format in which the temperature will be displayed in a notification.\n    # Valid options: \"c\" (celsius), \"f\" (fahrenheit).\n    temperatureUnit: с\n    # Format of notification title\n    title:\n      # Title text.\n      # If you specify {timestamp}, then the title will contain the date when the notification was generated.\n      text: \"Critical temperature readings [{timestamp}]:\"\n  # Time in seconds when a notification can be resubmitted\n  repeatTimeout: 1800\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkos-v%2Fsensors-informer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkos-v%2Fsensors-informer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkos-v%2Fsensors-informer/lists"}