{"id":36496349,"url":"https://github.com/roeldev/youless-logger","last_synced_at":"2026-01-12T02:04:39.382Z","repository":{"id":225415657,"uuid":"177824431","full_name":"roeldev/youless-logger","owner":"roeldev","description":"Long-term data logger service for YouLess energy meter","archived":false,"fork":false,"pushed_at":"2024-10-01T09:19:04.000Z","size":297,"stargazers_count":3,"open_issues_count":9,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-22T10:51:51.377Z","etag":null,"topics":["energy-monitor","home-automation","iot","youless"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/repository/docker/roeldev/youless-logger/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/roeldev.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-26T16:08:51.000Z","updated_at":"2024-10-01T09:19:07.000Z","dependencies_parsed_at":"2024-03-22T19:39:24.535Z","dependency_job_id":"081043b0-0473-4073-9fc0-a4aaeaf75167","html_url":"https://github.com/roeldev/youless-logger","commit_stats":null,"previous_names":["project-casa/youless-logger","roeldev/youless-logger"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/roeldev/youless-logger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roeldev%2Fyouless-logger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roeldev%2Fyouless-logger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roeldev%2Fyouless-logger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roeldev%2Fyouless-logger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roeldev","download_url":"https://codeload.github.com/roeldev/youless-logger/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roeldev%2Fyouless-logger/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28331517,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T00:36:25.062Z","status":"online","status_checked_at":"2026-01-12T02:00:08.677Z","response_time":98,"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":["energy-monitor","home-automation","iot","youless"],"created_at":"2026-01-12T02:01:54.977Z","updated_at":"2026-01-12T02:04:39.368Z","avatar_url":"https://github.com/roeldev.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"Services for YouLess energy monitor\n===================================\n\n[![Latest release][latest-release-img]][latest-release-url]\n[![Build status][build-status-img]][build-status-url]\n[![Go Report Card][report-img]][report-url]\n[![Documentation][doc-img]][doc-url]\n\n[latest-release-img]: https://img.shields.io/github/release/roeldev/youless-logger.svg?label=latest\n\n[latest-release-url]: https://github.com/roeldev/youless-logger/releases\n\n[build-status-img]: https://github.com/go-pogo/buildinfo/actions/workflows/test.yml/badge.svg\n\n[build-status-url]: https://github.com/go-pogo/buildinfo/actions/workflows/test.yml\n\n[report-img]: https://goreportcard.com/badge/github.com/roeldev/youless-logger\n\n[report-url]: https://goreportcard.com/report/github.com/roeldev/youless-logger\n\n[doc-img]: https://godoc.org/github.com/roeldev/youless-logger?status.svg\n\n[doc-url]: https://pkg.go.dev/github.com/roeldev/youless-logger\n\n\nA _YouLess energy monitor_ is a handy device to monitor your power and gas usage. It has its downsides though, one is a\nlimited amount of historical data that is stored. This package aims to solve that problem by storing the monitored data\nof each interval for a much longer period of time. And it is able to do so for multiple YouLess devices. \nIt also provides an API compatible with YouLess' own API so the service can easily be used by any existing client.\n\nKey features are:\n\n- no more limits on monitored data\n- get data from multiple devices\n- only monitor the utility services you want\n- configure update intervals\n- classic api can serve older data\n- support for grpc and graphql\n\n## Logger service\n\n[![Build status][build-status-img]][build-status-url]\n[![Layers][image-layers-img]][image-layers-url]\n[![Image size][image-size-img]][image-size-url]\n[build-status-img]: https://img.shields.io/docker/cloud/build/roeldev/casa-youless-logger.svg\n\n[build-status-url]: https://hub.docker.com/r/roeldev/casa-youless-logger/builds\n\n[image-layers-img]: https://img.shields.io/microbadger/layers/roeldev/casa-youless-logger/latest.svg\n\n[image-layers-url]: https://microbadger.com/images/roeldev/casa-youless-logger\n\n[image-size-img]: https://img.shields.io/microbadger/image-size/roeldev/casa-youless-logger/latest.svg\n\n[image-size-url]: https://hub.docker.com/r/roeldev/casa-youless-logger/tags\n\n## API server for use with Logger\n\n## Observer server\n\n## CLI tool\nA CLI tool is available to display info or communicate with the configured devices. Login to the Docker container and\nuse `yl list` to list all available commands. It is also possible to run the tool outside of the Docker container\nvia `docker exec -it {container_name} yl {command}`.\n\n## Client package\n\n-----\n\n## Installation\n\n```docker pull roeldev/casa-youless-logger```\n\n### Docker-compose\n\n```\nservices:\n  youless-logger-service:\n    image: roeldev/casa-youless-logger:latest\n    volumes:\n      - config:/youless-logger/config/\n      - data:/youless-logger/data/\n      - log:/youless-logger/log/\n```\n\n### Volumes\n\n| Path                         | Contains                |\n|------------------------------|-------------------------|\n| ```/youless-logger/config``` | Config files            \n| ```/youless-logger/data```   | Database (backup) files \n| ```/youless-logger/log```    | Log files               \n\n## Configuration\n\nSupport for multiple YouLess devices means a little more configuration. Altough it should be pretty self explanatory,\nmost important stuff is mentioned in this chapter. But first, have a look at the\n_[sample config](youless-logger/config/config-example.php)_ for a quick overview of possibilities.\n\nEach device should have at least an _ip_ option set so the logger can reach the device's API. All other values are not\nrequired. However, this probably results in way too much useless data being saved. Therefore it's recommended to only\nenable the data service(s) that are actually monitored. and disables classic API support\n\u003e **Note:** Latest YouLess devices support data from multiple different counters: power, gas, s0 and water. \n\u003e Older versions only support power.\n\nBelow example adds two devices:\n\n1. _house_ which requires a password to access the API on _192.168.1.27_ and provides data of power and gas consumption;\n2. _shed_ which is hosted on _192.168.1.32_ and only provides data of the s0 pulse counter.\n\n```\n'devices' =\u003e [\n    'house' =\u003e [\n        'ip' =\u003e 'http://192.168.1.27',\n        'password' =\u003e 'secret',\n        'services' =\u003e [\n            'power' =\u003e true,\n            'gas' =\u003e true,\n            's0' =\u003e false,\n        ]\n    ],\n    'shed' =\u003e [\n        'ip' =\u003e 'http://192.168.1.32'\n        'services' =\u003e [ 's0' ]\n    ]\n]\n```\n\n## Stored data\n\nA new SQLite database is created on first run. All data values are stored in the `data` table within this database.\n\n### Intervals\n\n| Id | Interval | API equiv. | LS110 history*  | LS120 history*   | Unit (power/s0) | Unit (gas)       |\n|----|----------|------------|-----------------|------------------|-----------------|------------------|\n| 1  | minute   | h          | 1 hour (2x30)   | 10 hours (20x30) | watt            | n/a              \n| 2  | 10 mins  | w          | 24 hours (3x48) | 10 days (30x48)  | watt            | liter            \n| 3  | hour     | d          | 7 days (7x24)   | 70 days (70x24)  | watt            | liter            \n| 4  | day      | m          | 1 year (12x31)  | 1 year (12x31)   | kWh             | m3 (cubic meter) \n\n* = max. history (amount of pages x data entries)\n\n### Units\n\n| Id | Unit  | API equiv. | Service  |\n|----|-------|------------|----------|\n| 1  | watt  | Watt       | power/s0 \n| 2  | kwh   | kWh        | power/s0 \n| 3  | liter | l          | gas      \n| 4  | m3    | m3         | gas      \n\n## Documentation\n\nAdditional detailed documentation is available at [pkg.go.dev][doc-url]\n\n## Links\n\n- Github: https://github.com/roeldev/youless-logger\n- Docker hub: https://hub.docker.com/r/roeldev/casa-youless-logger\n- YouLess: https://youless.nl\n- YouLess API info: http://wiki.td-er.nl/index.php?title=YouLess\n\n## Created with\n\n\u003ca href=\"https://www.jetbrains.com/?from=roeldev\" target=\"_blank\"\u003e\u003cimg src=\"https://resources.jetbrains.com/storage/products/company/brand/logos/GoLand_icon.png\" width=\"35\" /\u003e\u003c/a\u003e\n\n## License\n\nCopyright © 2019-2024 [Roel Schut](https://roelschut.nl). All rights reserved.\n\nThis project is governed by a BSD-style license that can be found in the [LICENSE](LICENSE) file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froeldev%2Fyouless-logger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froeldev%2Fyouless-logger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froeldev%2Fyouless-logger/lists"}