草庐IT

hook_cron

全部标签

node.js - 如何在使用集群模块的 Node.js 应用程序中运行 Cron Job?

我正在使用node-cron用于在Node.js应用程序中调度任务的模块。我还想使用核心集群模块在多个进程中运行应用程序。在多个进程中运行应用程序最终会在每个进程中执行计划任务(例如,如果任务要发送电子邮件,则电子邮件将被发送多次)。与集群模块一起运行cron作业的最佳做法/可能的方法是什么?我是否应该创建一些单独的进程来仅处理cron作业并且不接受任何请求。如果是,我该如何以正确的方式做到这一点? 最佳答案 如果使用PM2,您可以使用PM2本身提供的名为NODE_APP_INSTANCE的环境变量,它需要PM22.5或更高版本。N

node.js - 对于异步测试和钩子(Hook),确保调用 "done()";如果返回一个 Promise,确保它解决

我在测试时对nodejs进行了这个测试,我得到一个未声明完成函数的错误。Error:Timeoutof2000msexceeded.Forasynctestsandhooks,ensure"done()"iscalled;ifreturningaPromise,ensureitresolves.我的测试代码是,我已经完成回调,但仍然收到错误调用done();it('removeexistingsubdocument',(done)=>{constVic=newUser({name:'Vic',posts:[{title:'LeaningNodejs'}]});vic.save().th

node.js - 使用 Node-Cron 每 45 分钟运行一次 Cron 作业

我正在使用node-cron来运行预定的作业。我希望作业每45分钟运行一次,但它的行为很奇怪这是我正在使用的模式'00*/45****'我的脚本开始于2014年6月17日星期二08:17:39GMT+0000(GMT)这是作业执行的前几次1。2014年6月17日星期二08:45:03GMT+0000(GMT)2。2014年6月17日星期二09:00:01GMT+0000(GMT)3。2014年6月17日星期二09:45:02GMT+0000(GMT)这绝对不是我所期望或想要的。我想要的只是每45分钟运行一次作业。任何人都可以帮助我的模式?谢谢:) 最佳答案

javascript - 从 Mocha 中的 afterEach Hook 中检测测试失败

我正在尝试创建一个afterEach钩子(Hook),其逻辑只有在之前的测试失败时才会触发。例如:it("some_test1",function(){//somethingthatcouldfail})it("some_test2",function(){//somethingthatcouldfail})afterEach(function(){if(some_test_failed){//dosomethingtorespondtothefailingtest}else{//donothingandcontinuetonexttest}})但是,我没有已知的方法来检测测试是否从a

node.js - Express.js 关闭钩子(Hook)

在Express.js中,有没有办法设置应用程序关闭时执行的回调函数? 最佳答案 您可以使用node.jscoreprocess'exit'event像这样:process.on('exit',function(){//Addshutdownlogichere.});当然,主事件循环将在退出函数返回后停止运行,因此您无法在该函数中安排任何计时器或回调(例如,任何I/O必须是同步的)。 关于node.js-Express.js关闭钩子(Hook),我们在StackOverflow上找到一个

javascript - 如何让 Mocha 加载定义全局 Hook 或实用程序的 helper.js 文件?

我有一个名为test/helper.js的文件,用于在我的Node.js应用程序上运行Mocha测试。我的测试结构如下:test/test/helper.js#globalbefore/aftertest/api/sometest.spec.jstest/models/somemodel.spec.js...morehere文件helper.js必须加载,因为它包含我的测试套件的全局Hook。当我像这样运行Mocha来执行整个测试套件时:mocha--recursivetest/helper.js文件在我的测试之前加载,并且我的beforeHook按预期执行。但是,当我只运行一个特定的

node.js - 如何通过 cron 作业执行 Node.js 脚本?

很简单,我想每月执行一次Node脚本。3061**node/home/steve/example/script.js但这不起作用,可能是因为路径或命令正在运行的外壳。我尝试了以下通过cron执行Node的方法(使用-v测试):steve@atom:~$node-vv0.4.2steve@atom:~$shnode-vsh:Can'topennodesteve@atom:~$bashnode-v/usr/local/bin/node:/usr/local/bin/node:cannotexecutebinaryfilesteve@atom:~$/usr/local/bin/node-vv

docker - 通过 docker 日志查看 cron 输出,无需使用额外文件

我在docker容器中运行“cron”。每天都会执行一个脚本。我想通过“dockerlogs”查看此脚本的输出PID为0的进程是我容器中的cron守护进程。入口点在前台启动cron:/usr/sbin/crond-f我了解,我可以将脚本输出重定向到文件“path/to/logs”072***/data/docker/backup_webserver/backupscript.sh>>path/to/logs并按以下方式启动容器以查看日志"tail-fpath/to/logs"但是文件“path/to/logs”会在容器运行期间增长。是否可以从crontab直接登录到“dockerlog

cron - 如何在 docker gitlab-ce 中启用 cron 备份

我正在使用this要安装的Docker镜像gitlab-ce要配置它,您可以覆盖名为gitlab.rb的文件。通过将其作为卷安装在./gitlab.rb:/etc/gitlab/gitlab.rb:ro你可以找到gitlab.rbhere在备份部分,我目前有这个:##Forsettingupbackups##seehttps://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#backups#gitlab_rails['manage_backup_p

docker - Cron 和 Crontab 文件未在 Docker 中执行

我有这个简单的Dockerfile用于测试,但这在我的LEMP堆栈中的PHP镜像中也是相同的:cron作业根本没有在Docker中执行。这是我的测试Dockerfile:FROMdebian:latestMAINTAINERXYLABELDescription="Cron"Vendor="IstvanLantos"Version="1.0"RUNapt-get-yupdate&&apt-get-ydist-upgrade\&&apt-get-yinstall\cron\rsyslog\vimRUNrm-rf/var/lib/apt/lists/*#cronfixesRUNtouch/e