如何为bat文件产生log文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为bat文件产生log文件?相关的知识,希望对你有一定的参考价值。

参考技术A 在BAT开始用
>
输出文字到LOG文件.后面用>>输出文字到LOG文件.
>会把上次的LOG清空,>>回追加文字到文件中
echo
bat
begin:>error.log
.......
...
:UserError
echo
userError
:
%%ERRORLEVEL%%
>>error.log
参考技术B 什么叫整个bat文件输出到log文件?
bat运行中显示的内容吗?还是???

如何为 celery 任务日志指定文件路径?

【中文标题】如何为 celery 任务日志指定文件路径?【英文标题】:How to specify filepath for celery task logs? 【发布时间】:2020-08-08 00:19:58 【问题描述】:

我已经使用 Django 创建了一些 REST API,并且我正在使用 Celery 来运行一些异步作业。 API在api.py中定义,异步作业函数在actions.py

这是我的api.py 的样子:

from myproject import actions

def sample_api(request):
    actions.sample_job.delay()
    return HttpResponse('success')

这是我的actions.py 的样子:

from celery.utils.log import get_task_logger
from celery.decorators import task

logger = get_task_logger(__name__)


@task(name="sample_job")
def sample_job():
    logger.info("start operation")
    <some operations>
    logger.info("stop operation")

现在的问题是我不知道日志写入的位置。我试过在项目目录中搜索,但在任何地方都看不到。 我想提供应该写入这些日志的日志文件的路径。如何在 celery 中提供日志文件的路径?

(我知道 *** 中有多个关于此的问题。但没有一个真正提到如何为日志文件指定文件路径)

【问题讨论】:

检查工人configuration 好吧,我在 settings.py 中没有提到任何日志路径。对于 api.py,我已经在该文件本身中定义了记录器并且它可以工作。我希望同样适用于 actions.py,但它没有 @Kurohige。感谢它的实际工作。我在运行 celery 时指定了 --logfile 并且我能够在正确的位置获取日志。然而,只有“信息”级别的日志即将到来。我需要那里所有类别的日志。但我想我可以用谷歌搜索这个解决方案 @DejanLekic 这就是页面所说的“在调试、信息、警告、错误、严重或致命之间进行选择。”但我不想选择一个。我想知道如何将它们全部放在同一个日志文件中。 它们是 LEVELS - DEBUG 包括 ALL,INFO 大部分,WARNING 包括警告和错误,最后 ERROR 只包括错误。这就是 Python 日志框架的一般工作方式...... 【参考方案1】:

您需要从文档中指定日志文件:

-f, --logfile

日志文件的路径。如果没有指定日志文件,则使用 stderr。

例如:

celery -A project worker --logfile=<path>

【讨论】:

以上是关于如何为bat文件产生log文件?的主要内容,如果未能解决你的问题,请参考以下文章

java中运行bat文件怎么才能不产生dos窗口,不带闪的

如何为这个 C++ Windows 项目制作“make.bat”?

bat批量重命名文件(在子文件夹里)

bat批量重命名文件

如何为apache提供cmd权限?

bat输出log日志操作