frexco-pylogger


Namefrexco-pylogger JSON
Version 0.2.5 PyPI version JSON
download
home_pagehttps://github.com/frexco-digital/frexco-pylogger.git
SummaryPython library for logging with colors and http status code.
upload_time2023-04-12 22:15:42
maintainer
docs_urlNone
author
requires_python
license
keywords logs logging logger
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # **Frexco PyLogger**

## Install

___

```bash
pip install frexco_pylogger
```

## Configure

___

```python
# main.py
from frexco_pylogger.functions import PyLogger

logger = PyLogger(appname="my_app")
logger.http(message="Uma mensagem http qualquer", status_code=200, data={"name": "Um nome qualquer", "age": 22})
```

> 2022-09-02 14:05:59 | [HTTP   ] | Uma mensagem http qualquer | [STATUSCODE 200] | {'name': 'Um nome qualquer', 'age': 22}

## Log Types

___

| Tipo      | Description                                                        |
|-----------|--------------------------------------------------------------------|
| `error`   | Informar sobre exceptions tratadas                                 |
| `warning` | Informar eventos ou estados potencialmente prejudicias ao programa |
| `debug`   | Acompanhar eventos ou estados do programa                          |
| `info`    | Descrever infos detalhadas sobre o estado do programa              |
| `http`    | Informar dados de requests e responses feitas via http             |

## Middlewares

___

### django

```python
# httpLogger.py
from frexco_pylogger.functions import PyLogger
from django.utils.deprecation import MiddlewareMixin


class HTTPLoggerMiddleware(MiddlewareMixin):

    def process_response(self, request, response):
        logger = PyLogger(appname="my_django_app")
        logger.http(message=f'{request.META.get("REMOTE_ADDR")} {request.method} {request.META.get("PATH_INFO")}',
                    status_code=response.status_code)

        return response
```

```python
# setting.py

MIDDLEWARE = [
    ...,
    'app.utils.httpLogger.HTTPLoggerMiddleware' # path to your middleware file
]

```

### Flask

```python
# Your app setup file
from flask import Flask, request, Response
from frexco_pylogger.functions import PyLogger

app = Flask(__name__)
logger = PyLogger(appname="my_flask_app")

@app.after_request
def log_response(response: Response):
    logger.http(message=f'{request.remote_addr} {request.method} {request.path}',
                status_code=response.status_code)
    return response

```

## Alert

```python
# Seu arquivo de configuração de logger
from frexco_pylogger.functions import PyLogger

logger = PyLogger(appname="my_app_name", group="nome_do_grupo") # Ex: group="warehouse", Ex: group="consumer"

logger.error(message="Uma messagem de error qualquer",
            status_code=500, data={"name": "Um error"}) # Enviar alerta

logger.error(message="Uma messagem de error qualquer repetida",
            status_code=500, data={"name": "Um error"}, alert=False) # Não enviar alerta
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/frexco-digital/frexco-pylogger.git",
    "name": "frexco-pylogger",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "logs logging logger",
    "author": "",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/ce/c4/f7230c3d96a26e4d106c3c48d6d5b609b4313f76e4a7125d219c6d80e1b7/frexco_pylogger-0.2.5.tar.gz",
    "platform": null,
    "description": "# **Frexco PyLogger**\n\n## Install\n\n___\n\n```bash\npip install frexco_pylogger\n```\n\n## Configure\n\n___\n\n```python\n# main.py\nfrom frexco_pylogger.functions import PyLogger\n\nlogger = PyLogger(appname=\"my_app\")\nlogger.http(message=\"Uma mensagem http qualquer\", status_code=200, data={\"name\": \"Um nome qualquer\", \"age\": 22})\n```\n\n> 2022-09-02 14:05:59 | [HTTP   ] | Uma mensagem http qualquer | [STATUSCODE 200] | {'name': 'Um nome qualquer', 'age': 22}\n\n## Log Types\n\n___\n\n| Tipo      | Description                                                        |\n|-----------|--------------------------------------------------------------------|\n| `error`   | Informar sobre exceptions tratadas                                 |\n| `warning` | Informar eventos ou estados potencialmente prejudicias ao programa |\n| `debug`   | Acompanhar eventos ou estados do programa                          |\n| `info`    | Descrever infos detalhadas sobre o estado do programa              |\n| `http`    | Informar dados de requests e responses feitas via http             |\n\n## Middlewares\n\n___\n\n### django\n\n```python\n# httpLogger.py\nfrom frexco_pylogger.functions import PyLogger\nfrom django.utils.deprecation import MiddlewareMixin\n\n\nclass HTTPLoggerMiddleware(MiddlewareMixin):\n\n    def process_response(self, request, response):\n        logger = PyLogger(appname=\"my_django_app\")\n        logger.http(message=f'{request.META.get(\"REMOTE_ADDR\")} {request.method} {request.META.get(\"PATH_INFO\")}',\n                    status_code=response.status_code)\n\n        return response\n```\n\n```python\n# setting.py\n\nMIDDLEWARE = [\n    ...,\n    'app.utils.httpLogger.HTTPLoggerMiddleware' # path to your middleware file\n]\n\n```\n\n### Flask\n\n```python\n# Your app setup file\nfrom flask import Flask, request, Response\nfrom frexco_pylogger.functions import PyLogger\n\napp = Flask(__name__)\nlogger = PyLogger(appname=\"my_flask_app\")\n\n@app.after_request\ndef log_response(response: Response):\n    logger.http(message=f'{request.remote_addr} {request.method} {request.path}',\n                status_code=response.status_code)\n    return response\n\n```\n\n## Alert\n\n```python\n# Seu arquivo de configura\u00e7\u00e3o de logger\nfrom frexco_pylogger.functions import PyLogger\n\nlogger = PyLogger(appname=\"my_app_name\", group=\"nome_do_grupo\") # Ex: group=\"warehouse\", Ex: group=\"consumer\"\n\nlogger.error(message=\"Uma messagem de error qualquer\",\n            status_code=500, data={\"name\": \"Um error\"}) # Enviar alerta\n\nlogger.error(message=\"Uma messagem de error qualquer repetida\",\n            status_code=500, data={\"name\": \"Um error\"}, alert=False) # N\u00e3o enviar alerta\n```\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Python library for logging with colors and http status code.",
    "version": "0.2.5",
    "split_keywords": [
        "logs",
        "logging",
        "logger"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cec4f7230c3d96a26e4d106c3c48d6d5b609b4313f76e4a7125d219c6d80e1b7",
                "md5": "48a35ee2d98ca17f4ecea9ce3ef7460f",
                "sha256": "806fe22a908b81317abd928916a1538c57a0dd87f4cc6b0bd9d2460772fde762"
            },
            "downloads": -1,
            "filename": "frexco_pylogger-0.2.5.tar.gz",
            "has_sig": false,
            "md5_digest": "48a35ee2d98ca17f4ecea9ce3ef7460f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 4221,
            "upload_time": "2023-04-12T22:15:42",
            "upload_time_iso_8601": "2023-04-12T22:15:42.127796Z",
            "url": "https://files.pythonhosted.org/packages/ce/c4/f7230c3d96a26e4d106c3c48d6d5b609b4313f76e4a7125d219c6d80e1b7/frexco_pylogger-0.2.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-12 22:15:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "frexco-digital",
    "github_project": "frexco-pylogger.git",
    "lcname": "frexco-pylogger"
}
        
Elapsed time: 0.10938s