403Webshell
Server IP : 202.61.199.114  /  Your IP : 216.73.217.139
Web Server : nginx/1.22.1
System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
User : web20 ( 1018)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/arni-solutions.de/web/crm/database/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/arni-solutions.de/web/crm/database/schema_cronjobs.sql
-- =====================================================================
-- ArNi CRM - Cronjob-Verwaltung (Multi-Server-fähig)
-- Tabellen für Server, Cronjobs, Ausführungen und Audit-Log.
-- Idempotent (CREATE TABLE IF NOT EXISTS). Prefix: crm_
-- =====================================================================

-- Registrierte Server (Architektur für mehrere Hosts; aktuell nur der lokale).
CREATE TABLE IF NOT EXISTS `crm_servers` (
  `id`         INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `name`       VARCHAR(120) NOT NULL,
  `hostname`   VARCHAR(190) DEFAULT NULL,
  `type`       VARCHAR(24)  NOT NULL DEFAULT 'local',  -- local | ssh
  `ssh_host`   VARCHAR(190) DEFAULT NULL,
  `ssh_user`   VARCHAR(64)  DEFAULT NULL,
  `ssh_port`   INT          DEFAULT 22,
  `is_local`   TINYINT(1)   NOT NULL DEFAULT 0,
  `active`     TINYINT(1)   NOT NULL DEFAULT 1,
  `created_at` DATETIME     NOT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_active` (`active`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Cronjobs (CRM-verwaltet und/oder importiert).
CREATE TABLE IF NOT EXISTS `crm_server_cronjobs` (
  `id`                INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `server_id`         INT UNSIGNED NOT NULL DEFAULT 1,
  `name`              VARCHAR(190) NOT NULL,
  `description`       TEXT         DEFAULT NULL,
  `run_user`          VARCHAR(64)  NOT NULL DEFAULT 'root',
  `schedule`          VARCHAR(120) NOT NULL,           -- 5-Feld Cron-Ausdruck
  `command`           TEXT         NOT NULL,
  `working_directory` VARCHAR(255) DEFAULT NULL,
  `timeout`           INT UNSIGNED NOT NULL DEFAULT 3600, -- Sekunden
  `active`            TINYINT(1)   NOT NULL DEFAULT 1,
  `source`            VARCHAR(16)  NOT NULL DEFAULT 'managed', -- managed | imported
  `origin`            VARCHAR(255) DEFAULT NULL,        -- Herkunft bei Import (z.B. /etc/cron.d/x, crontab:user)
  `notify_on_error`   TINYINT(1)   NOT NULL DEFAULT 0,
  `notify_on_success` TINYINT(1)   NOT NULL DEFAULT 0,
  `notify_email`      VARCHAR(190) DEFAULT NULL,
  `last_run_at`       DATETIME     DEFAULT NULL,
  `last_exit_code`    INT          DEFAULT NULL,
  `last_status`       VARCHAR(16)  DEFAULT NULL,        -- success | failed | timeout | running
  `avg_runtime`       DECIMAL(10,2) DEFAULT NULL,       -- Sekunden
  `created_by`        VARCHAR(120) DEFAULT NULL,
  `created_at`        DATETIME     NOT NULL,
  `updated_at`        DATETIME     DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_server` (`server_id`),
  KEY `idx_active` (`active`),
  KEY `idx_source` (`source`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Ausführungs-Historie.
CREATE TABLE IF NOT EXISTS `crm_server_cronjob_runs` (
  `id`          INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `cronjob_id`  INT UNSIGNED NOT NULL,
  `server_id`   INT UNSIGNED NOT NULL DEFAULT 1,
  `started_at`  DATETIME     NOT NULL,
  `finished_at` DATETIME     DEFAULT NULL,
  `duration`    DECIMAL(10,2) DEFAULT NULL,             -- Sekunden
  `exit_code`   INT          DEFAULT NULL,
  `status`      VARCHAR(16)  NOT NULL DEFAULT 'running', -- running | success | failed | timeout
  `trigger`     VARCHAR(16)  NOT NULL DEFAULT 'manual',  -- manual | scheduled
  `stdout`      LONGTEXT     DEFAULT NULL,
  `stderr`      LONGTEXT     DEFAULT NULL,
  `created_at`  DATETIME     NOT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_cronjob` (`cronjob_id`),
  KEY `idx_started` (`started_at`),
  KEY `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Audit-Log aller Cronjob-Aktionen.
CREATE TABLE IF NOT EXISTS `crm_server_cronjob_audit` (
  `id`         INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `user_id`    INT UNSIGNED DEFAULT NULL,
  `user_name`  VARCHAR(120) DEFAULT NULL,
  `server_id`  INT UNSIGNED DEFAULT NULL,
  `action`     VARCHAR(64)  NOT NULL,
  `target`     VARCHAR(190) DEFAULT NULL,
  `result`     VARCHAR(16)  DEFAULT NULL,               -- ok | error
  `detail`     TEXT         DEFAULT NULL,
  `ip`         VARCHAR(45)  DEFAULT NULL,
  `created_at` DATETIME     NOT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_created` (`created_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Youez - 2016 - github.com/yon3zu
LinuXploit