html-logging-tool


Namehtml-logging-tool JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/rphpires/html-logging-tool
SummaryBiblioteca para geração de logs em HTML com suporte a cores, rotação e filtros via JavaScript.
upload_time2025-08-27 22:29:30
maintainerNone
docs_urlNone
authorRaphael Pires
requires_python>=3.8
licenseNone
keywords logging html logger logs colors trace
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # HTML Logger

Uma biblioteca Python para geração de logs em HTML com suporte a cores, rotação de arquivos e filtros via JavaScript.

## Características

- ✅ Logs coloridos em formato HTML
- ✅ Rotaão automática de arquivos
- ✅ Interface limpa com filtros JavaScript integrados
- ✅ Thread-safe e de alta performance
- ✅ Suporte a exceções com traceback completo
- ✅ Configuração flexível de tamanho e quantidade de arquivos

## Instalação

```bash
pip install html-logging-tool
```

## Uso Básico

```python
from htmllogger import log, error, report_exception

# Mensagens simples
log("Mensagem informativa normal")
log("Mensagem em azul", color="blue")

# Mensagens de erro
error("Esta é uma mensagem de erro")

# Registrar exceções
try:
    # Seu código aqui
    raise ValueError("Erro exemplo")
except Exception as e:
    report_exception(e)
```

## Configuração

```python
from htmllogger import config

# Personalize as configurações do logger
config(
    max_files=15,           # Número máximo de arquivos de log
    max_size=5000000,       # Tamanho máximo por arquivo (5MB)
    main_filename="log.html", # Nome do arquivo principal
    log_dir="logs"          # Diretório para os logs
)
```

## Estrutura de Arquivos

Os logs são armazenados no diretório especificado (padrão: `logs/`) com a seguinte estrutura:

```
logs/
└── log.html (arquivo atual)
└── 2023-10-05_12-30-45_log.html (arquivo rotacionado)
└── 2023-10-05_10-15-32_log.html (arquivo rotacionado)
```

## Filtros JavaScript Integrados

Os arquivos HTML gerados incluem recursos de filtro para facilitar a análise:

- Filtro por texto
- Filtro por nível (cor)
- Filtro por período

## Exemplo Completo

```python
from htmllogger import log, error, report_exception, config

# Configurar o logger
config(
    max_files=10,
    max_size=2000000,  # 2MB
    log_dir="my_logs"
)

# Registrar diferentes tipos de mensagens
log("Iniciando aplicação", color="green")
log("Processando dados...", color="blue")

for i in range(100):
    log(f"Processando item {i}")

try:
    # Código que pode gerar erro
    resultado = 10 / 0
except Exception as e:
    error("Divisão por zero detectada")
    report_exception(e)

log("Aplicação finalizada", color="green")
```

## API Reference

### log(message, color="white")
Registra uma mensagem com a cor especificada.

### error(message)
Registra uma mensagem de erro (em vermelho).

### report_exception(exc, timeout=None)
Registra uma exceção com seu traceback completo.

### config(**kwargs)
Configura as opções do logger:
- `max_files`: Número máximo de arquivos a manter
- `max_size`: Tamanho máximo em bytes por arquivo
- `main_filename`: Nome do arquivo de log principal
- `log_dir`: Diretório onde os logs serão armazenados

## Desenvolvimento

Para contribuir com o projeto:

1. Faça um fork do repositório
2. Crie uma branch para sua feature (`git checkout -b feature/AmazingFeature`)
3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`)
4. Push para a branch (`git push origin feature/AmazingFeature`)
5. Abra um Pull Request

## Suporte

Se você encontrar problemas ou tiver dúvidas:

1. Consulte a [documentação](https://github.com/rphpires/html-logging-tool)
2. Abra uma [issue](https://github.com/rphpires/html-logging-tool/issues)
3. Entre em contato: rphspires@gmail.com

## Licença

Este projeto está licenciado sob a licença MIT - veja o arquivo [LICENSE](LICENSE) para detalhes.

## Agradecimentos

- Desenvolvido por Raphael Pires
- Inspirado pela necessidade de logs visualmente ricos para debugging
- Contribuições são bem-vindas!

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/rphpires/html-logging-tool",
    "name": "html-logging-tool",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "logging, html, logger, logs, colors, trace",
    "author": "Raphael Pires",
    "author_email": "Raphael Pires Nome <rphspires@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/a8/14/441641250287a203cdbbc3de2c78a670299af863758e09a777fad14e878e/html_logging_tool-0.1.2.tar.gz",
    "platform": null,
    "description": "# HTML Logger\r\n\r\nUma biblioteca Python para gera\u00e7\u00e3o de logs em HTML com suporte a cores, rota\u00e7\u00e3o de arquivos e filtros via JavaScript.\r\n\r\n## Caracter\u00edsticas\r\n\r\n- \u2705 Logs coloridos em formato HTML\r\n- \u2705 Rota\u00e3o autom\u00e1tica de arquivos\r\n- \u2705 Interface limpa com filtros JavaScript integrados\r\n- \u2705 Thread-safe e de alta performance\r\n- \u2705 Suporte a exce\u00e7\u00f5es com traceback completo\r\n- \u2705 Configura\u00e7\u00e3o flex\u00edvel de tamanho e quantidade de arquivos\r\n\r\n## Instala\u00e7\u00e3o\r\n\r\n```bash\r\npip install html-logging-tool\r\n```\r\n\r\n## Uso B\u00e1sico\r\n\r\n```python\r\nfrom htmllogger import log, error, report_exception\r\n\r\n# Mensagens simples\r\nlog(\"Mensagem informativa normal\")\r\nlog(\"Mensagem em azul\", color=\"blue\")\r\n\r\n# Mensagens de erro\r\nerror(\"Esta \u00e9 uma mensagem de erro\")\r\n\r\n# Registrar exce\u00e7\u00f5es\r\ntry:\r\n    # Seu c\u00f3digo aqui\r\n    raise ValueError(\"Erro exemplo\")\r\nexcept Exception as e:\r\n    report_exception(e)\r\n```\r\n\r\n## Configura\u00e7\u00e3o\r\n\r\n```python\r\nfrom htmllogger import config\r\n\r\n# Personalize as configura\u00e7\u00f5es do logger\r\nconfig(\r\n    max_files=15,           # N\u00famero m\u00e1ximo de arquivos de log\r\n    max_size=5000000,       # Tamanho m\u00e1ximo por arquivo (5MB)\r\n    main_filename=\"log.html\", # Nome do arquivo principal\r\n    log_dir=\"logs\"          # Diret\u00f3rio para os logs\r\n)\r\n```\r\n\r\n## Estrutura de Arquivos\r\n\r\nOs logs s\u00e3o armazenados no diret\u00f3rio especificado (padr\u00e3o: `logs/`) com a seguinte estrutura:\r\n\r\n```\r\nlogs/\r\n\u2514\u2500\u2500 log.html (arquivo atual)\r\n\u2514\u2500\u2500 2023-10-05_12-30-45_log.html (arquivo rotacionado)\r\n\u2514\u2500\u2500 2023-10-05_10-15-32_log.html (arquivo rotacionado)\r\n```\r\n\r\n## Filtros JavaScript Integrados\r\n\r\nOs arquivos HTML gerados incluem recursos de filtro para facilitar a an\u00e1lise:\r\n\r\n- Filtro por texto\r\n- Filtro por n\u00edvel (cor)\r\n- Filtro por per\u00edodo\r\n\r\n## Exemplo Completo\r\n\r\n```python\r\nfrom htmllogger import log, error, report_exception, config\r\n\r\n# Configurar o logger\r\nconfig(\r\n    max_files=10,\r\n    max_size=2000000,  # 2MB\r\n    log_dir=\"my_logs\"\r\n)\r\n\r\n# Registrar diferentes tipos de mensagens\r\nlog(\"Iniciando aplica\u00e7\u00e3o\", color=\"green\")\r\nlog(\"Processando dados...\", color=\"blue\")\r\n\r\nfor i in range(100):\r\n    log(f\"Processando item {i}\")\r\n\r\ntry:\r\n    # C\u00f3digo que pode gerar erro\r\n    resultado = 10 / 0\r\nexcept Exception as e:\r\n    error(\"Divis\u00e3o por zero detectada\")\r\n    report_exception(e)\r\n\r\nlog(\"Aplica\u00e7\u00e3o finalizada\", color=\"green\")\r\n```\r\n\r\n## API Reference\r\n\r\n### log(message, color=\"white\")\r\nRegistra uma mensagem com a cor especificada.\r\n\r\n### error(message)\r\nRegistra uma mensagem de erro (em vermelho).\r\n\r\n### report_exception(exc, timeout=None)\r\nRegistra uma exce\u00e7\u00e3o com seu traceback completo.\r\n\r\n### config(**kwargs)\r\nConfigura as op\u00e7\u00f5es do logger:\r\n- `max_files`: N\u00famero m\u00e1ximo de arquivos a manter\r\n- `max_size`: Tamanho m\u00e1ximo em bytes por arquivo\r\n- `main_filename`: Nome do arquivo de log principal\r\n- `log_dir`: Diret\u00f3rio onde os logs ser\u00e3o armazenados\r\n\r\n## Desenvolvimento\r\n\r\nPara contribuir com o projeto:\r\n\r\n1. Fa\u00e7a um fork do reposit\u00f3rio\r\n2. Crie uma branch para sua feature (`git checkout -b feature/AmazingFeature`)\r\n3. Commit suas mudan\u00e7as (`git commit -m 'Add some AmazingFeature'`)\r\n4. Push para a branch (`git push origin feature/AmazingFeature`)\r\n5. Abra um Pull Request\r\n\r\n## Suporte\r\n\r\nSe voc\u00ea encontrar problemas ou tiver d\u00favidas:\r\n\r\n1. Consulte a [documenta\u00e7\u00e3o](https://github.com/rphpires/html-logging-tool)\r\n2. Abra uma [issue](https://github.com/rphpires/html-logging-tool/issues)\r\n3. Entre em contato: rphspires@gmail.com\r\n\r\n## Licen\u00e7a\r\n\r\nEste projeto est\u00e1 licenciado sob a licen\u00e7a MIT - veja o arquivo [LICENSE](LICENSE) para detalhes.\r\n\r\n## Agradecimentos\r\n\r\n- Desenvolvido por Raphael Pires\r\n- Inspirado pela necessidade de logs visualmente ricos para debugging\r\n- Contribui\u00e7\u00f5es s\u00e3o bem-vindas!\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Biblioteca para gera\u00e7\u00e3o de logs em HTML com suporte a cores, rota\u00e7\u00e3o e filtros via JavaScript.",
    "version": "0.1.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/rphpires/html-logging-tool/issues",
        "Homepage": "https://github.com/rphpires/html-logging-tool"
    },
    "split_keywords": [
        "logging",
        " html",
        " logger",
        " logs",
        " colors",
        " trace"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7b836e6a796d0639deea85e10b84ec7c16c270fa34538f447f66d03ec86b0c05",
                "md5": "1e0cd6b58f26c1f7d7b4d431c121ea58",
                "sha256": "3de5805c5e976a2295578756e08b5e6fb7c4b9eb4a982b5b087fccfd0a2eabe8"
            },
            "downloads": -1,
            "filename": "html_logging_tool-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1e0cd6b58f26c1f7d7b4d431c121ea58",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 6836,
            "upload_time": "2025-08-27T22:29:28",
            "upload_time_iso_8601": "2025-08-27T22:29:28.936454Z",
            "url": "https://files.pythonhosted.org/packages/7b/83/6e6a796d0639deea85e10b84ec7c16c270fa34538f447f66d03ec86b0c05/html_logging_tool-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a814441641250287a203cdbbc3de2c78a670299af863758e09a777fad14e878e",
                "md5": "f230726006815d812ce8b413e58a5d99",
                "sha256": "2dfcea56a9f6dcf880ccc5e9e3741d5b04a2d59c5bcb566e6b822d9dc037be29"
            },
            "downloads": -1,
            "filename": "html_logging_tool-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "f230726006815d812ce8b413e58a5d99",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 6378,
            "upload_time": "2025-08-27T22:29:30",
            "upload_time_iso_8601": "2025-08-27T22:29:30.105340Z",
            "url": "https://files.pythonhosted.org/packages/a8/14/441641250287a203cdbbc3de2c78a670299af863758e09a777fad14e878e/html_logging_tool-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-27 22:29:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "rphpires",
    "github_project": "html-logging-tool",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "html-logging-tool"
}
        
Elapsed time: 1.82716s