async-task-kit 0.1.14__tar.gz → 0.1.15__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/PKG-INFO +5 -1
  2. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/README.md +4 -0
  3. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/utils/logger.py +19 -12
  4. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit.egg-info/PKG-INFO +5 -1
  5. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/pyproject.toml +1 -1
  6. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/LICENSE +0 -0
  7. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/__init__.py +0 -0
  8. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/consumer/__init__.py +0 -0
  9. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/consumer/base.py +0 -0
  10. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/consumer/coroutine.py +0 -0
  11. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/consumer/process.py +0 -0
  12. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/consumer/thread.py +0 -0
  13. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/core/__init__.py +0 -0
  14. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/core/processor.py +0 -0
  15. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/core/rabbitmq.py +0 -0
  16. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/utils/__init__.py +0 -0
  17. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit/utils/env_loader.py +0 -0
  18. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit.egg-info/SOURCES.txt +0 -0
  19. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit.egg-info/dependency_links.txt +0 -0
  20. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit.egg-info/requires.txt +0 -0
  21. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/async_task_kit.egg-info/top_level.txt +0 -0
  22. {async_task_kit-0.1.14 → async_task_kit-0.1.15}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: async-task-kit
3
- Version: 0.1.14
3
+ Version: 0.1.15
4
4
  Summary: A powerful async task processing kit based on RabbitMQ with Coroutine, Thread, and Process support.
5
5
  Author-email: realwrtoff <realwrtoff@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -223,6 +223,10 @@ await rmq.pop("my_queue", durable=False)
223
223
 
224
224
  `queue_length` 使用 passive 模式,无需传 `durable`。
225
225
 
226
+ ## Changelog
227
+
228
+ 各版本变更说明见 [CHANGELOG.md](CHANGELOG.md)。
229
+
226
230
  ## License
227
231
 
228
232
  MIT
@@ -207,6 +207,10 @@ await rmq.pop("my_queue", durable=False)
207
207
 
208
208
  `queue_length` 使用 passive 模式,无需传 `durable`。
209
209
 
210
+ ## Changelog
211
+
212
+ 各版本变更说明见 [CHANGELOG.md](CHANGELOG.md)。
213
+
210
214
  ## License
211
215
 
212
216
  MIT
@@ -2,34 +2,41 @@ import logging
2
2
  import os
3
3
  from logging.handlers import TimedRotatingFileHandler
4
4
 
5
+
5
6
  def setup_logger(
6
- name: str = "app",
7
+ name: str | None = None,
7
8
  log_dir: str = "logs",
8
- backup_count: int = 7 * 24 # 7天 * 24小时
9
- ):
9
+ backup_count: int = 7 * 24, # 7天 * 24小时
10
+ level: int = logging.INFO,
11
+ ) -> logging.Logger:
12
+ """Configure logging handlers.
13
+
14
+ By default configures the **root** logger so ``logging.getLogger(__name__)``
15
+ works everywhere. Pass ``name="app"`` to configure a named logger only.
16
+ """
10
17
  os.makedirs(log_dir, exist_ok=True)
11
18
  logger = logging.getLogger(name)
12
- logger.setLevel(logging.INFO)
19
+ logger.setLevel(level)
13
20
  logger.handlers.clear()
21
+ logger.propagate = name is not None
22
+
23
+ formatter = logging.Formatter(
24
+ "%(asctime)s | %(levelname)-8s | %(name)s | %(message)s"
25
+ )
14
26
 
15
- # 按小时切割,保留7天
16
27
  file_handler = TimedRotatingFileHandler(
17
28
  when="H",
18
29
  interval=1,
19
30
  backupCount=backup_count,
20
31
  encoding="utf-8",
21
- filename=f"{log_dir}/app.log"
22
- )
23
-
24
- # 可观测格式:结构化纯文本(对接日志平台最舒服)
25
- formatter = logging.Formatter(
26
- "%(asctime)s | %(levelname)-8s | %(name)s | %(message)s"
32
+ filename=f"{log_dir}/app.log",
27
33
  )
28
34
  file_handler.setFormatter(formatter)
35
+ file_handler.setLevel(level)
29
36
 
30
- # 控制台输出
31
37
  console = logging.StreamHandler()
32
38
  console.setFormatter(formatter)
39
+ console.setLevel(level)
33
40
 
34
41
  logger.addHandler(file_handler)
35
42
  logger.addHandler(console)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: async-task-kit
3
- Version: 0.1.14
3
+ Version: 0.1.15
4
4
  Summary: A powerful async task processing kit based on RabbitMQ with Coroutine, Thread, and Process support.
5
5
  Author-email: realwrtoff <realwrtoff@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -223,6 +223,10 @@ await rmq.pop("my_queue", durable=False)
223
223
 
224
224
  `queue_length` 使用 passive 模式,无需传 `durable`。
225
225
 
226
+ ## Changelog
227
+
228
+ 各版本变更说明见 [CHANGELOG.md](CHANGELOG.md)。
229
+
226
230
  ## License
227
231
 
228
232
  MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "async-task-kit"
7
- version = "0.1.14"
7
+ version = "0.1.15"
8
8
  description = "A powerful async task processing kit based on RabbitMQ with Coroutine, Thread, and Process support."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
File without changes