celery -A proj report
μ μΆλ ₯μ ν¬ν¨νμ΅λλ€.software -> celery:4.0.2 (latentcall) kombu:4.0.2 py:3.6.1
billiard:3.5.0.2 py-amqp:2.1.4
platform -> system:Darwin arch:64bit imp:CPython
loader -> celery.loaders.default.Loader
settings -> transport:amqp results:disabled
self.retry()
λ₯Ό ν΅ν΄ μ¬μλνλ μμ
λ§λ€κΈ°send_task
μμ
μ νΈμΆνκ³ expires
μμ μ λ§λ£ μκ°μ λλ¬νκ±°λ max_retries κ°μ λλ¬ν λκΉμ§ μ¬μλν΄μΌ ν©λλ€.
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/celery/app/task.py", line 684, in retry
S.apply_async()
File "/usr/lib/python3.6/site-packages/celery/canvas.py", line 221, in apply_async
return _apply(args, kwargs, **options)
File "/usr/lib/python3.6/site-packages/celery/app/task.py", line 535, in apply_async
**options
File "/usr/lib/python3.6/site-packages/celery/app/base.py", line 729, in send_task
root_id, parent_id, shadow, chain,
File "/usr/lib/python3.6/site-packages/celery/app/amqp.py", line 334, in as_task_v2
expires = expires and expires.isoformat()
AttributeError: 'str' object has no attribute 'isoformat'
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ λνλ©λλ€ ν΄κ²° λ°©λ² -μ κ° μ¬ ν λΉ self.request.expires
μ¬λ¦¬κΈ° μ μ self.retry()
.
μ¦, μ€ν λ°©λ²μμ:
self.request.expires = dateparser.parse(self.request.expires)
raise self.retry()
μλ§λ μ΄κ²μ μμ λμμΌλ©° λ«μ μ μμ΅λκΉ? @thedrow
μ€λ³΅μΈλ―.
μ΅μ RCλ₯Ό μλνμ¬ λ¬Έμ κ° ν΄κ²°λμλμ§ νμΈνμμμ€.
κ·Έλ μ§ μμ κ²½μ° μ¬κΈ°μ λκΈμ λ¬μμ£Όμλ©΄ λ€μ μ΄κ² μ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ λνλ©λλ€ ν΄κ²° λ°©λ² -μ κ° μ¬ ν λΉ
self.request.expires
μ¬λ¦¬κΈ° μ μself.retry()
.μ¦, μ€ν λ°©λ²μμ: