Skip to main content

工具方法

Project description

项目用法说明

utils_zihang

utils_zihang 是一个工具库,提供一系列常用的工具方法,包括日志记录功能。

安装

通过 pip 安装:

pip install utils_zihang

使用示例

日志工具

手动指定日志目录

可以手动指定日志目录:

import os
from utils_zihang.log import setup_logger

# 手动指定日志目录
custom_log_dir = "/path/to/your/custom/log/dir"
log = setup_logger(app_name="my_app", env="DEV", log_dir=custom_log_dir)
log.info("这是一条信息日志")

import uuid

trace_id = str(uuid.uuid4())
log.bind(trace=trace_id).info("这是一条带有trace的信息日志")
log.bind(trace=trace_id, analysis=True).info("这是一条带有trace和analysis的信息日志")
log.bind(analysis=True).info("这是一条带有analysis的信息日志")

根据环境变量设置日志目录

可以根据环境变量 ENV 设置日志目录,环境变量支持 DEV, TEST, UAT, PROD

import os
from utils_zihang.log import setup_logger

# 根据环境变量设置日志路径
env = os.getenv('ENV', 'DEV').upper()
log_dir = os.path.join('logs', env.lower())
os.makedirs(log_dir, exist_ok=True)

log = setup_logger(app_name="my_app", env=env, log_dir=log_dir)
log.info("这是一条信息日志")

import uuid

trace_id = str(uuid.uuid4())
log.bind(trace=trace_id).info("这是一条带有trace的信息日志")
log.bind(trace=trace_id, analysis=True).info("这是一条带有trace和analysis的信息日志")
log.bind(analysis=True).info("这是一条带有analysis的信息日志")

默认日志目录

在服务器上,默认的日志目录为 /data/log,如果不指定日志目录,则日志将保存在该目录下:

import os
from utils_zihang.log import setup_logger

# 不指定日志目录,默认保存在 /data/log
log = setup_logger(app_name="my_app", env="PROD")
log.info("这是一条信息日志")

import uuid

trace_id = str(uuid.uuid4())
log.bind(trace=trace_id).info("这是一条带有trace的信息日志")
log.bind(trace=trace_id, analysis=True).info("这是一条带有trace和analysis的信息日志")
log.bind(analysis=True).info("这是一条带有analysis的信息日志")

完整示例代码

main.py 中使用 setup_logger 函数来配置日志:

import os
from utils_zihang.log import setup_logger

# 根据环境变量设置日志路径
env = os.getenv('ENV', 'DEV').upper()
log_dir = os.path.join('logs', env.lower())
os.makedirs(log_dir, exist_ok=True)

log = setup_logger(app_name="my_app", env=env, log_dir=log_dir)
log.info("这是一条信息日志")

import uuid

trace_id = str(uuid.uuid4())
log.bind(trace=trace_id).info("这是一条带有trace的信息日志")
log.bind(trace=trace_id, analysis=True).info("这是一条带有trace和analysis的信息日志")
log.bind(analysis=True).info("这是一条带有analysis的信息日志")

其他工具

此空间预留用于将来添加其他工具的说明。

setup_logger 函数说明

setup_logger 函数用于配置日志记录器,支持以下参数:

  • app_name:应用名称,用于生成日志文件名。
  • env:环境名称,如 DEV, TEST, UAT, PROD
  • log_dir:日志目录路径,默认根据环境变量设置。

日志文件:

  • 普通日志:<app_name>.log
  • 错误日志:<app_name>-error.log
  • 分析日志:<app_name>-analysis.log

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

utils_zihang-0.0.7.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

utils_zihang-0.0.7-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file utils_zihang-0.0.7.tar.gz.

File metadata

  • Download URL: utils_zihang-0.0.7.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.6

File hashes

Hashes for utils_zihang-0.0.7.tar.gz
Algorithm Hash digest
SHA256 cbf540bb21c1f7051b510adf7cefc52321a1bd80fd640e06a691952948677962
MD5 38c36a69b0e75ef7e6dfc4b7857e6105
BLAKE2b-256 182f0c0f6155751bf93b22b55834d90c73751e63596b2d65c89207106c2b504e

See more details on using hashes here.

File details

Details for the file utils_zihang-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: utils_zihang-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.6

File hashes

Hashes for utils_zihang-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 841b93d4bd1b076c7978e5d89fc413ba213fd4c35c79339d1a6b8447eb38c8ca
MD5 7f7e407650e072d8368ae4fdb8bc0aa6
BLAKE2b-256 4c267dd19e6c65b00781ad857c266301bd090b8dbc576ddf973250caba3210cb

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