Skip to content

Commit f72d8c0

Browse files
authored
Merge pull request #2 from wiz-develop:endou-mame/issue1
PHP-FPM の標準ログ出力を設定ファイルで指定するのではなくシンボリックリンクに変更
2 parents 2407835 + bf48717 commit f72d8c0

File tree

3 files changed

+13
-11
lines changed

3 files changed

+13
-11
lines changed

docker/app/php-fpm/Dockerfile

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,17 @@ RUN \
4141
# Unixソケット通信用のディレクトリを作成
4242
&& mkdir -p \
4343
/run/php-fpm \
44+
/var/log/php-fpm \
4445
&& chown -R ${USERNAME}:${USERNAME} \
45-
/run/php-fpm
46+
/run/php-fpm \
47+
/var/log/php-fpm \
48+
# NOTE: アクセスログ、エラーログ、スローログをdockerログに転送するためシンボリックリンクを作成
49+
# NOTE: php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.
50+
# NOTE: https://bugs.php.net/bug.php?id=73886
51+
&& ln -sf /proc/self/fd/2 /var/log/php-fpm/error.log \
52+
&& ln -sf /proc/self/fd/2 /var/log/php-fpm/www-access.log \
53+
&& ln -sf /proc/self/fd/2 /var/log/php-fpm/www-error.log \
54+
&& ln -sf /proc/self/fd/2 /var/log/php-fpm/www-slow.log
4655

4756
# PHP-FPM の設定ファイルをコピー
4857
COPY --from=php-fpm-ctx ./php-fpm.conf /etc/php-fpm.conf

docker/app/php-fpm/php-fpm.conf

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ pid = /run/php-fpm/php-fpm.pid
2323
; If it's set to "syslog", log is sent to syslogd instead of being written
2424
; in a local file.
2525
; Default Value: /var/log/php-fpm.log
26-
; NOTE: ログ出力先を標準出力に変更
27-
; error_log = /var/log/php-fpm/error.log
28-
error_log = /proc/self/fd/2
26+
error_log = /var/log/php-fpm/error.log
2927

3028
; syslog_facility is used to specify what type of program is logging the
3129
; message. This lets syslogd specify that messages from different facilities

docker/app/php-fpm/php-fpm.d/www.conf

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -282,10 +282,7 @@ ping.path = /ping
282282
; The access log file
283283
; Default: not set
284284
;access.log = log/$pool.access.log
285-
; NOTE: php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.
286-
; NOTE: https://bugs.php.net/bug.php?id=73886
287-
; NOTE: アクセスログを有効にし、かつログ出力先を標準出力に変更
288-
access.log = /proc/self/fd/2
285+
access.log = /var/log/php-fpm/www-access.log
289286

290287
; The access log format.
291288
; The following syntax is allowed
@@ -349,9 +346,7 @@ access.log = /proc/self/fd/2
349346
; The log file for slow requests
350347
; Default Value: not set
351348
; Note: slowlog is mandatory if request_slowlog_timeout is set
352-
; NOTE: Slowログ出力先を標準出力に変更
353-
; slowlog = /var/log/php-fpm/www-slow.log
354-
slowlog = /proc/self/fd/2
349+
slowlog = /var/log/php-fpm/www-slow.log
355350

356351
; The timeout for serving a single request after which a PHP backtrace will be
357352
; dumped to the 'slowlog' file. A value of '0s' means 'off'.

0 commit comments

Comments
 (0)