log-to-loki


Namelog-to-loki JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/yyunoshev/log-to-loki
SummaryPython library for sending logs to Grafana Loki with batching support
upload_time2025-08-02 00:21:36
maintainerNone
docs_urlNone
authorYunoshev Yaroslav
requires_python>=3.7
licenseMIT
keywords logging loki grafana observability monitoring
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Loki Logger

Python библиотека для отправки логов в Grafana Loki с поддержкой батчинга и автоматического определения вызывающей функции.

## Установка

```bash
pip install log-to-loki
```

## Быстрый старт

```python
from log_to_loki import LokiLogger

# Создание логгера
logger = LokiLogger(
    name='my-app',
    loki_url='http://localhost:3100',
    username='admin',
    password='admin',
    labels={'environment': 'production'}
)

# Использование
logger.info("Приложение запущено")
logger.error("Произошла ошибка")
```


## Возможности
✅ Батчинг логов для производительности
✅ Автоматическое определение вызывающей функции
✅ Поддержка консольного вывода
✅ Настраиваемые метки (labels)
✅ Многопоточная отправка логов
✅ Переиспользование HTTP соединений

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/yyunoshev/log-to-loki",
    "name": "log-to-loki",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "logging, loki, grafana, observability, monitoring",
    "author": "Yunoshev Yaroslav",
    "author_email": "Yunoshev Yaroslav <yunoshev.dev@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/dd/33/27d331dd2e31595f2d6469bee8d0c13ed5cd7ac7e7ee33163400af8967a5/log_to_loki-0.1.0.tar.gz",
    "platform": null,
    "description": "# Loki Logger\n\nPython \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043b\u043e\u0433\u043e\u0432 \u0432 Grafana Loki \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0431\u0430\u0442\u0447\u0438\u043d\u0433\u0430 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0449\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.\n\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n```bash\npip install log-to-loki\n```\n\n## \u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u0442\u0430\u0440\u0442\n\n```python\nfrom log_to_loki import LokiLogger\n\n# \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u0433\u0435\u0440\u0430\nlogger = LokiLogger(\n    name='my-app',\n    loki_url='http://localhost:3100',\n    username='admin',\n    password='admin',\n    labels={'environment': 'production'}\n)\n\n# \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\nlogger.info(\"\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043e\")\nlogger.error(\"\u041f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u043e\u0448\u0438\u0431\u043a\u0430\")\n```\n\n\n## \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438\n\u2705 \u0411\u0430\u0442\u0447\u0438\u043d\u0433 \u043b\u043e\u0433\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438\n\u2705 \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0449\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438\n\u2705 \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u0432\u043e\u0434\u0430\n\u2705 \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u043c\u0435\u0442\u043a\u0438 (labels)\n\u2705 \u041c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u043b\u043e\u0433\u043e\u0432\n\u2705 \u041f\u0435\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 HTTP \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python library for sending logs to Grafana Loki with batching support",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/yyunoshev/log-to-loki/issues",
        "Documentation": "https://github.com/yyunoshev/log-to-loki#readme",
        "Homepage": "https://github.com/yyunoshev/log-to-loki",
        "Source Code": "https://github.com/yyunoshev/log-to-loki"
    },
    "split_keywords": [
        "logging",
        " loki",
        " grafana",
        " observability",
        " monitoring"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c28c3d67947f5413e2321508f80b90e2f353e4496b881d3931b790091156f61d",
                "md5": "cc7b5071b554d6cd97a7639cb0e8ce33",
                "sha256": "9ecf3c49cb8667bfaaee48b691000b8a34db30856628d23520410db0af023e95"
            },
            "downloads": -1,
            "filename": "log_to_loki-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cc7b5071b554d6cd97a7639cb0e8ce33",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 6945,
            "upload_time": "2025-08-02T00:21:35",
            "upload_time_iso_8601": "2025-08-02T00:21:35.228609Z",
            "url": "https://files.pythonhosted.org/packages/c2/8c/3d67947f5413e2321508f80b90e2f353e4496b881d3931b790091156f61d/log_to_loki-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dd3327d331dd2e31595f2d6469bee8d0c13ed5cd7ac7e7ee33163400af8967a5",
                "md5": "cf4c111d21c90af64a5fb891636ea4ea",
                "sha256": "4d5880a291310c80dc6112b521ec0bcb57e07a3800cf4db37aac6b4a44099488"
            },
            "downloads": -1,
            "filename": "log_to_loki-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "cf4c111d21c90af64a5fb891636ea4ea",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 8345,
            "upload_time": "2025-08-02T00:21:36",
            "upload_time_iso_8601": "2025-08-02T00:21:36.667725Z",
            "url": "https://files.pythonhosted.org/packages/dd/33/27d331dd2e31595f2d6469bee8d0c13ed5cd7ac7e7ee33163400af8967a5/log_to_loki-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-02 00:21:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "yyunoshev",
    "github_project": "log-to-loki",
    "github_not_found": true,
    "lcname": "log-to-loki"
}
        
Elapsed time: 1.32048s