florianpalme/oxid-cronjobmanager

向OXID后端添加Cronjob管理器。

安装: 29

依赖: 0

建议者: 0

安全: 0

星级: 0

观察者: 4

分支: 0

开放问题: 0

类型:oxideshop-module

2.1.1 2018-02-23 16:47 UTC

This package is auto-updated.

Last update: 2024-09-07 08:14:57 UTC


README

向OXID后端添加Cronjob管理器。

安装

composer require florianpalme/oxid-cronjobmanager

设置Cronjob

在可以使用OXID Cronjob Manager使用Cronjob之前,必须设置一个正常的Crontab。在这个过程中,需要注意确保每分钟执行一次调用。

Linux Crontab

如果可以处理服务器上的Linux Crontab(crontab -e),可以插入以下行。

* * * * * php /pfad/zum/oxidshop/bin/cron.php

主机

如果无法通过Linux控制台设置Crontab,请联系你的主机,他们可以帮助你。在这种情况下,必须在OXID根目录下使用php执行bin/cron.php文件。

用法

在Service -> Cronjob Manager下,你可以找到由模块提供的所有Cronjob。

Cronjob列表

在列表中,你可以找到以下信息

编辑 - "Cronjob Manager"选项卡

点击Cronjob后,可以编辑以下信息

状态

Crontab

描述Cronjob的执行间隔,格式为Linux Crontab格式

编辑 - "日志"选项卡

这里可以找到执行次数、平均执行时间和失败Cronjob数量的简要概述。

在输出的列表中,将显示状态、开始和结束时间、执行时间以及可能的错误消息。

在模块中使用

作为模块开发者,通过Cronjob Manager,您可以节省编写自己的Cronjob函数的时间,例如检查是否可以执行。

覆盖维护

将您的Cronjob作为方法添加到\OxidEsales\Eshop\Application\Model\Maintenance类中。

错误消息

如果Cronjob由于某些原因失败,则可以抛出一个FlorianPalme\OXIDCronjobManager\Core\Exception\Exception实例。这将被捕获并将记录中的消息写入日志。

修改metadata.php

在metadata.php中,将$aModule数组扩展为一个名为cronjobs的数组,如下所示。

$aModule = [
   /** Cronjobs */
   'cronjobs' => [
        'moduleid_cronjobid' => [
            'fnc' => 'doMyJob',
            'title' => [
                'de' => 'My Job',
            ],
            'crontab' => '* * * * *',
        ],
    ],
];

对于cronjobs数组中包含的每个Cronjob,必须指定一个唯一的ID。建议使用MODULID_CRONJOBID。

参数

fnc

在oxMaintenance类中为该Cronjob指定的方法名称。

title

Cronjob的标题,可以是字符串或用于多语言的数组。

crontab

为此Cronjob推荐的Crontab设置。

变更日志

此项目的所有显著更改将在此文件中记录。

格式基于Keep a Changelog,并且此项目遵循语义化版本控制

2.1.1 - 2018-02-23

修复

  • #1修复了敏感操作系统的模板路径问题

2.1.0 - 2018-02-20

新增

修复

  • 当模块不再存在Cronjob时,管理员界面中的列表不再显示

2.0.0 - 2018-02-05

变更

  • 升级到OXID 6