Shopware Extensions
German
German
  • Shop Studio Docs
  • Erweiterungen
    • Pixel Your Shop
      • Installation
      • Tracking
        • Google Analytics Tracking
        • Google Ads Tracking
        • Google Tag Manager Tracking
        • Facebook Tracking
        • Microsoft Advertising Tracking
        • Instagram Tracking
        • Pinterest Tracking
        • Hotjar Tracking
      • Cookie-Zustimmung
        • Shopware
        • Cookie Bot
      • Entwicklung
        • Debug
        • Standard-Events ändern
      • Hilfe benötigt?
    • Bestellbestätigungs-Email erneut senden
      • Installation
      • Email erneut senden
      • Hilfe benötigt?
    • Rezepte
      • Installation
      • Einrichtung
      • Rezepte erstellen & veröffentlichen
      • PDFs einrichten
      • Hilfe benötigt?
    • Blog/Magazin
      • Installation
      • Einrichtung
      • Beiträge erstellen & veröffentlichen
      • Hilfe benötigt?
    • Erweiterte Suche (Blog + Rezepte)
      • Installation
      • Hilfe benötigt?
    • Hotjar
      • Installation
      • Einrichtung
      • Hilfe benötigt?
    • Google Tag Manager
      • Installation
      • Einrichtung
      • Events
      • Hilfe benötigt?
    • Google Ads
      • Installation
      • Einrichtung
      • Conversion ID und Label erhalten
      • Dynamisches Remarketing einrichten
      • Conversions und Events
      • Hilfe benötigt?
    • Wieder auf Lager-Benachrichtigungen
      • Installation
      • Einrichtung
      • Häufige Fehlerquellen
      • Hilfe benötigt?
    • Personalisierte Kundenbegrüßung
      • Installation
      • Einrichtung
      • Textbausteine ändern
      • Hilfe benötigt?
    • Microsoft Advertising
      • Installation
      • Hilfe benötigt?
    • Baum pro Bestellung
      • Installation
      • Einrichtung
        • TreeMates als Anbieter
        • Eigener Anbieter
      • Wie es funktioniert
        • TreeMates als Anbieter
        • Eigener Anbieter
      • Export
      • Häufige Fehlerquellen
      • Hilfe benötigt?
    • Health Check
      • Installation
      • Einrichtung
      • Weitere Checks programmieren
      • Hilfe benötigt?
    • Nutrition Labeling
      • Installation
      • Einrichtung
      • Hilfe benötigt?
    • Produktmix-Konfigurator
      • Installation
Powered by GitBook
On this page

Was this helpful?

  1. Erweiterungen
  2. Health Check

Weitere Checks programmieren

Mit ein wenig Programmierkenntnissen hast du auch die Möglichkeit, bisher nicht unterstützte Health Checks für andere Funktionen durchführen zu lassen. Beispielsweise die Anbindung von Redis.

Datenbank Beispiel

Zuerst musst du eine PHP-Klasse in deinem Plugin schreiben, der die Logik beinhaltet. Wichtig ist, dass das Interface HealthCheckInterface implementiert wird.

<?php declare(strict_types=1);

namespace ShopStudio\HealthCheck\Core\HealthCheck;

use Doctrine\DBAL\Connection;

class DatabaseHealthCheck implements HealthCheckInterface
{
    public const NAME = 'database';

    private Connection $connection;

    public function __construct(Connection $connection)
    {
        $this->connection = $connection;
    }

    public function getName(): string
    {
        return self::NAME;
    }

    public function check(): ?HealthCheckResult
    {
        $up = true;

        try {
            $this->connection->executeQuery($this->connection->getDatabasePlatform()->getDummySelectSQL());
        } catch (\Throwable $throwable) {
            $up = false;
        }

        return new HealthCheckResult($up, ['additional' => 'payload']);
    }
}

Anschließend noch die PHP-Klasse als Service in der services.xml implementieren. Vergesse nicht den Service als shop-studio.health-check zu taggen.

<?xml version="1.0" ?>

<container xmlns="http://symfony.com/schema/dic/services"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
    <services>

        <service id="ShopStudio\HealthCheck\Core\HealthCheck\DatabaseHealthCheck">
            <argument type="service" id="Doctrine\DBAL\Connection" />
            <tag name="shop-studio.health-check"/>
        </service>

    </services>
</container>
PreviousEinrichtungNextHilfe benötigt?

Last updated 2 years ago

Was this helpful?