diff --git a/docker/php/Dockerfile b/docker/php/Dockerfile index a4a1a587..7dd40acc 100644 --- a/docker/php/Dockerfile +++ b/docker/php/Dockerfile @@ -47,10 +47,12 @@ RUN apk add --no-cache \ && pecl install -o -f igbinary \ && pecl install redis \ && pecl install imagick \ + && pecl install excimer \ && docker-php-ext-enable \ igbinary \ redis \ imagick \ + excimer \ && apk del \ zlib-dev \ libpng-dev \ diff --git a/inc/profile.php b/inc/profile.php new file mode 100644 index 00000000..71b10ea0 --- /dev/null +++ b/inc/profile.php @@ -0,0 +1,21 @@ +setEventType(EXCIMER_REAL); + $prof->setPeriod(5); // every N seconds + $prof->setMaxDepth(250); + + $prof->setFlushCallback(function ($log) { + error_log("Logged profile", 0); + file_put_contents('/tmp/profles-ramfs/excimer-traces.log', $log->formatCollapsed(), FILE_APPEND | LOCK_EX); + }, 1); + $prof->start(); +} else { + error_log("Profiler code injected, but no excimer extension installed"); +}