Skip to main content

A logging library for internal usage.

Project description

Como funciona o equal-logger

  • O equal-logger é uma biblioteca que facilita o registro de logs em projetos na Azure e GCP.
  • Ele cria uma conexão com o storage da cloud e fica responsável por armazenar as mensagens de log em formato parquet, seguindo uma hierarquia de pastas.
  • O usuário só precisa importar o módulo, criar uma instância do Logger, registrar as mensagens de log e salvar. Todos os meta-dados necessários são coletados automaticamente.

Como instalar o equal-logger

Execute os comando abaixo para atualizar o repositório de bibliotecas e baixar a versão mais recente do equal-logger:

py -m pip install --upgrade pip
pip install equal-logger

Como preparar o ambiente antes de utilizar

  1. Como configurar a biblioteca com Google Cloud Storage
  2. Como configurar a biblioteca com Azure ADLS

Como incluir nos códigos

Comece importando o módulo:

from equal_logger import Logger

Após importar o módulo, crie uma instância do Logger:

logger = Logger(
    cloud="GCP",  # a cloud que está sendo utilizada ("GCP" ou "AZURE").
    project="evo-operacoes",  # nome do projeto, exatamente como no nome do bucket/container.
    script_name="wehelp_engaging_probability.py",  # nome do script que está rodando.
    data_source="WEHELP",  # nome da fonte de dados que está sendo extraída/transformada ou qualquer outro rótulo. (exemplo "META ADS").
    credentials="credentials.json",  # caminho para o arquivo de credenciais.
)

Agora você pode utilizar o logger para registrar mensagens de log:

logger.success("titulo 1", "descricao 1") # use para registrar mensagens de sucesso.
logger.info("titulo 1", "descricao 1") # use para registrar mensagens de informação.
logger.error("titulo 1", "descricao 1") # use para registrar mensagens de erro.

Por fim, finalize o logger. Este comando grava no storage os logs registrados, use-o somente uma vez ao final do script:

logger.save()

Exemplo de uso:

from equal_logger import Logger

logger = Logger(
    cloud="GCP",  
    project="evo-operacoes", 
    script_name="wehelp_engaging_probability.py",  
    data_source="WEHELP", 
    credentials="credentials.json", 
)

# executando as requisições e salvando no GCS
for retentativa in range(QUANTIDADE_DE_RETENTATIVAS):

    try:
        data = request_from_wehelp(endpoint)
        save_to_gcs(json.dumps(data))
        logger.log_success('dim_clientes', 'Extraído com sucesso!')
        break

    except Exception as e:
        logger.log_info('dim_clientes', f'RETRY: {retentativa} \n {e}')
        time.sleep(5)

else:
    logger.log_error('dim_clientes', f'Tentativas esgotadas! \n {e}')


logger.log_save()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

equal_logger-1.1.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

equal_logger-1.1.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file equal_logger-1.1.0.tar.gz.

File metadata

  • Download URL: equal_logger-1.1.0.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for equal_logger-1.1.0.tar.gz
Algorithm Hash digest
SHA256 741a8f4bae7c17bdfbd67d2020e08ae7b0e671000b6fb9a6eea6725393471763
MD5 2e2686ed7179ba54cbf5303f7b067f5b
BLAKE2b-256 8c84e69c98886ccfc3340b676c7eb9a0aa44ff61303c7852f03e077e3f4de550

See more details on using hashes here.

File details

Details for the file equal_logger-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: equal_logger-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for equal_logger-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b9e38e33dc160296d4d1ad2e9796291a051a221e54522f94d1d87dcfd051e868
MD5 1f7a7a3d68996a37a5fb6a94b8fc9d94
BLAKE2b-256 7c80cf834c5a73cc43eac098c83a39b2dc770072e5a288ec100bab48c7fa53e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page