diff --git a/composer.json b/composer.json index 751f5a7..152e78c 100644 --- a/composer.json +++ b/composer.json @@ -25,16 +25,20 @@ "minimum-stability": "dev", "prefer-stable": true, "require": { - "dreamfactory/df-core": "~1.0", - "dreamfactory/df-system": "~0.6", - "spatie/laravel-http-logger": "^1.1", - "promphp/prometheus_client_php": "2.2.*", - "predis/predis": "1.1.*", + "php": "^8.3", "ext-json": "*", - "php": "^8.0" + "laravel/helpers": "^1.8", + "dreamfactory/df-core": "~1.0.4", + "spatie/laravel-http-logger": "^1.11.2", + "promphp/prometheus_client_php": "^2.14", + "predis/predis": "^1.1" }, "require-dev": { - "phpunit/phpunit": "~7.0", + "laravel/framework": "^13.7", + "mockery/mockery": "^1.6", + "nunomaduro/collision": "^8.6", + "phpunit/phpunit": "^11.5.3", + "orchestra/testbench": "^11.0", "filp/whoops": "~2.0" }, "autoload": { diff --git a/src/ServiceProvider.php b/src/ServiceProvider.php index 5787d26..4f3458a 100644 --- a/src/ServiceProvider.php +++ b/src/ServiceProvider.php @@ -55,9 +55,11 @@ public function register() * @return void */ protected function addMiddleware() - { + { Route::aliasMiddleware(ServiceProvider::MIDDLEWARE_NAME, HttpLogger::class); - Route::pushMiddlewareToGroup('df.api', ServiceProvider::MIDDLEWARE_NAME); + if (Route::hasMiddlewareGroup('df.api')) { + Route::pushMiddlewareToGroup('df.api', ServiceProvider::MIDDLEWARE_NAME); + } } protected function addMetricRoute() { diff --git a/src/Utility/HttpLogger/PredisAdapter.php b/src/Utility/HttpLogger/PredisAdapter.php index 64834ea..90d0540 100644 --- a/src/Utility/HttpLogger/PredisAdapter.php +++ b/src/Utility/HttpLogger/PredisAdapter.php @@ -65,6 +65,18 @@ public function collect(): array ); } + /** + * Summary metrics are not used by this exporter, but the Adapter interface + * (promphp/prometheus_client_php >= 2.3) requires this method. Implement as + * a no-op so the adapter satisfies the contract. + * + * @param array $data + */ + public function updateSummary(array $data): void + { + // No-op: summary metrics are not collected by df-exporter-prometheus. + } + /** * @param array $data */