From e9dbb78d1b1c2f0e460051afa37c2c8d332bba8e Mon Sep 17 00:00:00 2001 From: Dominik Hebeler <dominik@suma-ev.de> Date: Mon, 16 May 2022 13:00:28 +0200 Subject: [PATCH] Prometheus is not using redis anymore --- .vscode/settings.json | 1 - build/fpm/Dockerfile | 3 +-- metager/.env.example | 1 + metager/app/PrometheusExporter.php | 17 ++++++++++------- metager/app/Providers/AppServiceProvider.php | 15 ++------------- metager/composer.json | 3 ++- metager/composer.lock | 10 +++++----- 7 files changed, 21 insertions(+), 29 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index a33a6a4fd..56c2a45c9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -6,7 +6,6 @@ "docker-linter.php.machine": "", "intelephense.stubs": [ "apache", - "redis", "bcmath", "bz2", "calendar", diff --git a/build/fpm/Dockerfile b/build/fpm/Dockerfile index 5e3d296dd..d6ac8d31f 100644 --- a/build/fpm/Dockerfile +++ b/build/fpm/Dockerfile @@ -21,8 +21,7 @@ RUN apt update && apt install -y \ libzip-dev \ libpng-dev && \ docker-php-ext-install zip gd pcntl pdo_mysql && \ - yes '' | pecl install redis-5.3.7 xdebug-3.1.4 && \ - docker-php-ext-enable redis && \ + yes '' | pecl install xdebug-3.1.4 && \ docker-php-ext-enable --ini-name=xdebug.ini xdebug # Add working dir for the code base diff --git a/metager/.env.example b/metager/.env.example index d8f24bea1..28cf31e5c 100644 --- a/metager/.env.example +++ b/metager/.env.example @@ -12,6 +12,7 @@ DB_DATABASE=metager DB_USERNAME=metager DB_PASSWORD="metager" +REDIS_CLIENT=predis REDIS_RESULT_CONNECTION=default REDIS_RESULT_CACHE_DURATION=60 diff --git a/metager/app/PrometheusExporter.php b/metager/app/PrometheusExporter.php index f5e769f9c..23e4be47d 100644 --- a/metager/app/PrometheusExporter.php +++ b/metager/app/PrometheusExporter.php @@ -2,47 +2,50 @@ namespace App; +use Prometheus\CollectorRegistry; +use Prometheus\Storage\InMemory; + class PrometheusExporter { public static function CaptchaShown() { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter('metager', 'captcha_shown', 'counts how often the captcha was shown', []); $counter->inc(); } public static function CaptchaCorrect() { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter('metager', 'captcha_correct', 'counts how often the captcha was solved correctly', []); $counter->inc(); } public static function CaptchaAnswered() { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter('metager', 'captcha_answered', 'counts how often the captcha was answered', []); $counter->inc(); } public static function HumanVerificationSuccessfull() { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter('metager', 'humanverification_success', 'counts how often humanverification middleware was successfull', []); $counter->inc(); } public static function HumanVerificationError() { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter('metager', 'humanverification_error', 'counts how often humanverification middleware had an error', []); $counter->inc(); } public static function Duration($duration, $type) { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $histogram = $registry->getOrRegisterHistogram('metager', 'request_time', 'Loading Times for different cases', ['type'], [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.2, 2.4, 2.6, 2.8, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 15.0, 20.0, 30.0, 35.0]); $histogram->observe($duration, [$type]); } @@ -53,7 +56,7 @@ class PrometheusExporter */ public static function PreferredLanguage($language, $type) { - $registry = \Prometheus\CollectorRegistry::getDefault(); + $registry = new CollectorRegistry(new InMemory()); $counter = $registry->getOrRegisterCounter("metager", $language, 'counts preferred language usages', ['type']); $counter->inc($type); } diff --git a/metager/app/Providers/AppServiceProvider.php b/metager/app/Providers/AppServiceProvider.php index 9f9881d1e..181ef7bbb 100644 --- a/metager/app/Providers/AppServiceProvider.php +++ b/metager/app/Providers/AppServiceProvider.php @@ -31,25 +31,14 @@ class AppServiceProvider extends ServiceProvider if (stripos($host, "metager.org") !== false) { \App::setLocale('en'); LaravelLocalization::setLocale('en'); - }else if (stripos($host, "metager.es") !== false) { + } else if (stripos($host, "metager.es") !== false) { \App::setLocale('es'); LaravelLocalization::setLocale('es'); - }else{ + } else { \App::setLocale('de'); LaravelLocalization::setLocale(); } - \Prometheus\Storage\Redis::setDefaultOptions( - [ - 'host' => config("database.redis.default.host"), - 'port' => intval(config("database.redis.default.port")), - 'password' => config("database.redis.default.password"), - 'timeout' => 0.1, // in seconds - 'read_timeout' => '10', // in seconds - 'persistent_connections' => false - ] - ); - Queue::before(function (JobProcessing $event) { }); Queue::after(function (JobProcessed $event) { diff --git a/metager/composer.json b/metager/composer.json index d78458cac..e9cd70d81 100644 --- a/metager/composer.json +++ b/metager/composer.json @@ -18,6 +18,7 @@ "laravel/tinker": "^2.5", "mcamara/laravel-localization": "1.6.*", "mews/captcha": "^3.2.6", + "predis/predis": "^1.1", "promphp/prometheus_client_php": "^2.2", "symfony/dom-crawler": "^5.2" }, @@ -68,4 +69,4 @@ }, "minimum-stability": "dev", "prefer-stable": true -} \ No newline at end of file +} diff --git a/metager/composer.lock b/metager/composer.lock index 1ca4ed9df..2db9569d2 100644 --- a/metager/composer.lock +++ b/metager/composer.lock @@ -1568,16 +1568,16 @@ }, { "name": "league/commonmark", - "version": "2.3.0", + "version": "2.3.1", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "32a49eb2b38fe5e5c417ab748a45d0beaab97955" + "reference": "cb36fee279f7fca01d5d9399ddd1b37e48e2eca1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/32a49eb2b38fe5e5c417ab748a45d0beaab97955", - "reference": "32a49eb2b38fe5e5c417ab748a45d0beaab97955", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/cb36fee279f7fca01d5d9399ddd1b37e48e2eca1", + "reference": "cb36fee279f7fca01d5d9399ddd1b37e48e2eca1", "shasum": "" }, "require": { @@ -1670,7 +1670,7 @@ "type": "tidelift" } ], - "time": "2022-04-07T22:37:05+00:00" + "time": "2022-05-14T15:37:39+00:00" }, { "name": "league/config", -- GitLab