定制 florianpalme/oxid-cronjobmanager 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

florianpalme/oxid-cronjobmanager

Composer 安装命令:

composer require florianpalme/oxid-cronjobmanager

包简介

Fügt dem OXID-Backend einen Cronjob-Manager ein.

README 文档

README

Fügt dem OXID-Backend einen Cronjob-Manager ein.

Installation

composer require florianpalme/oxid-cronjobmanager

Cronjob einrichten

Bevor Cronjobs mittels des OXID Cronjob Managers verwendet werden können, muss ein normaler Crontab eingerichtet werden. Dabei ist darauf zu achten, dass der Aufruf jeder Minute durchgeführt wird.

Linux Crontab

Kann der Linux Crontab auf dem Server bearbeitet werden (crontab -e), kann folgende Zeile eingefügt werden.

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

Hoster

Ist es dir nicht möglich, den Crontab über die Linux-Konsole einzurichten, wende dich an deinen Hoster, welcher dir weiterhelfen kann. Dabei muss die Datei bin/cron.php im OXID-Root-Verzeichnis mittels php ausgeführt werden.

Verwendung

Unter Service -> Cronjob Manager findest du alle von Modulen bereitgestellten Cronjobs.

Cronjob-Liste

In der Liste oben findest du folgende Informationen:

Spalte Beschreibung
S Status des Cronjobs
Modul Name des Moduls, zu welchem der Cronjob gehört
Cronjob-Name Name des Cronjobs, vergeben vom Modul
Crontab Ausführungs-Intervall
Letzte Ausführung Datum und Status der letzten Ausführung des Cronjobs

Bearbeitung - Tab "Cronjob Manager"

Nach dem Klick auf einen Cronjob lassen sich folgende Informationen bearbeiten:

Status

Wert Beschreibung
Aktiv Cronjob ist Aktiv und wird ausgeführt
Pausiert Die Ausführung wurde pausiert
Abgebrochen Die Ausführung wurde automatisch pausiert, da das Modul nicht mehr Aktiv ist oder die Cronjob-Funktion nicht vorhanden ist

Crontab

Beschreibt den Ausführungs-Intervall des Cronjobs im Linux Crontab Format

Bearbeitung - Tab "Log"

Hier findest du eine kurze Übersicht über die Anzahl der Ausführung, die durchschnittliche Ausführungszeit und die Anzahl der Fehlgeschlagenen Cronjobs.

In der ausgegebenen Liste werden Status, Start- & Endzeit, Ausführungszeit und ggf. eine Fehlermeldung ausgegeben.

Verwendung in Modulen

Als Modul-Entwickler ersparst du dir durch den Cronjob Manager das schreiben eigener Cronjob-Funktionen, wie Prüfungen, ob er nun ausgeführt werden darf oder nicht.

Überladen der Maintenance

Füge deinen Cronjob als Methode in der \OxidEsales\Eshop\Application\Model\Maintenance-Klasse hinzu.

Fehler-Meldungen

Schlägt dein Cronjob aus irgendwelchen Gründen fehl, so kannst du eine Instanz von FlorianPalme\OXIDCronjobManager\Core\Exception\Exception werfen. Diese wird abgefangen und die hinterlegte Message in den Log geschrieben.

Anpassung metadata.php

Das $aModule-Array in der metadata.php wird um ein Array cronjobs wie folgt erweitert.

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

Für jeden im cronjobs-Array enthaltenen Cronjob muss eine eindeutige ID vergeben werden. Empfohlen wird MODULID_CRONJOBID.

Parameter

fnc

Name der Methode für diesen Cronjob in der oxMaintenance-Klasse.

title

Titel des Cronjobs als String oder Array für mehrere Sprachen.

crontab

Empfohlene Crontab-Einstellung für diesen Cronjob.

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

2.1.1 - 2018-02-23

Fixed

  • #1 fix template paths for case-sensitive operating systems

2.1.0 - 2018-02-20

Added

Fixed

  • Liste im Admin wurde nicht mehr dargestellt, ist das Modul zu einem Cronjob nicht mehr vorhanden

2.0.0 - 2018-02-05

Changed

  • Upgrade auf OXID 6

florianpalme/oxid-cronjobmanager 适用场景与选型建议

florianpalme/oxid-cronjobmanager 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 33 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 02 月 06 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「manager」 「modules」 「eshop」 「cronjob」 「OXID」 「florianpalme」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 florianpalme/oxid-cronjobmanager 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 florianpalme/oxid-cronjobmanager 我们能提供哪些服务?
定制开发 / 二次开发

基于 florianpalme/oxid-cronjobmanager 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 33
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 3
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-only
  • 更新时间: 2018-02-06