Skip to content

Commit

Permalink
Creating a user/process agnostic logging pipe and sending output there
Browse files Browse the repository at this point in the history
  • Loading branch information
John Gasper committed Mar 26, 2018
1 parent 7447fb2 commit 96fafc6
Show file tree
Hide file tree
Showing 8 changed files with 36 additions and 32 deletions.
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,8 @@ COPY container_files/shibboleth/* /etc/shibboleth/
RUN cp /dev/null /etc/httpd/conf.d/ssl.conf \
&& sed -i 's/LogFormat "/LogFormat "httpd-access /g' /etc/httpd/conf/httpd.conf \
&& echo -e "\nErrorLogFormat \"httpd-error [%{u}t] [%-m:%l] [pid %P:tid %T] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i\"" >> /etc/httpd/conf/httpd.conf \
&& sed -i 's/CustomLog "logs\/access_log"/CustomLog "\/proc\/self\/fd\/1"/g' /etc/httpd/conf/httpd.conf \
&& sed -i 's/ErrorLog "logs\/error_log"/ErrorLog "\/proc\/self\/fd\/1"/g' /etc/httpd/conf/httpd.conf
&& sed -i 's/CustomLog "logs\/access_log"/CustomLog "\/tmp\/logpipe"/g' /etc/httpd/conf/httpd.conf \
&& sed -i 's/ErrorLog "logs\/error_log"/ErrorLog "\/tmp\/logpipe"/g' /etc/httpd/conf/httpd.conf

WORKDIR /opt/grouper/grouper.apiBinary/

Expand Down
8 changes: 4 additions & 4 deletions container_files/api/log4j.properties
Original file line number Diff line number Diff line change
Expand Up @@ -28,30 +28,30 @@

## Grouper API event logging
log4j.appender.grouper_event = org.apache.log4j.FileAppender
log4j.appender.grouper_event.file = /dev/fd/1
log4j.appender.grouper_event.file = /tmp/logpipe
log4j.appender.grouper_event.append = true
log4j.appender.grouper_event.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_event.layout.ConversionPattern = grouperd %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Grouper API error logging
log4j.appender.grouper_error = org.apache.log4j.FileAppender
log4j.appender.grouper_error.file = /dev/fd/1
log4j.appender.grouper_error.file = /tmp/logpipe
log4j.appender.grouper_errot.append = true
log4j.appender.grouper_error.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_error.layout.ConversionPattern = grouperd %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
#log4j.appender.grouper_error.layout.ConversionPattern = %d{ISO8601}: %m%n

# Debug logging (Or: logging that I haven't cleaned up yet to send elsewhere)
log4j.appender.grouper_debug = org.apache.log4j.FileAppender
log4j.appender.grouper_debug.file = /dev/fd/1
log4j.appender.grouper_debug.file = /tmp/logpipe
log4j.appender.grouper_debug.append = true
log4j.appender.grouper_debug.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_debug.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_debug.layout.ConversionPattern = grouperd %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Benchmark logging
log4j.appender.grouper_gb = org.apache.log4j.FileAppender
log4j.appender.grouper_gb.file = /dev/fd/1
log4j.appender.grouper_gb.file = /tmp/logpipe
log4j.appender.grouper_gb.append = true
log4j.appender.grouper_gb.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_gb.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
Expand Down
6 changes: 3 additions & 3 deletions container_files/shibboleth/shibd.logger
Original file line number Diff line number Diff line change
Expand Up @@ -42,20 +42,20 @@ log4j.additivity.Shibboleth-TRANSACTION=false
# define the appenders

log4j.appender.shibd_log=org.apache.log4j.FileAppender
log4j.appender.shibd_log.fileName=/dev/fd/1
log4j.appender.shibd_log.fileName=/tmp/logpipe
log4j.appender.shibd_log.maxFileSize=1000000
log4j.appender.shibd_log.maxBackupIndex=10
log4j.appender.shibd_log.layout=org.apache.log4j.PatternLayout
log4j.appender.shibd_log.layout.ConversionPattern=shibd-log %d{%Y-%m-%d %H:%M:%S} %p %c %x: %m%n

log4j.appender.tran_log=org.apache.log4j.FileAppender
log4j.appender.tran_log.fileName=/dev/fd/1
log4j.appender.tran_log.fileName=/tmp/logpipe
log4j.appender.tran_log.maxFileSize=1000000
log4j.appender.tran_log.maxBackupIndex=20
log4j.appender.tran_log.layout=org.apache.log4j.PatternLayout
log4j.appender.tran_log.layout.ConversionPattern=shibd-tran %d{%Y-%m-%d %H:%M:%S} %p %c %x: %m%n

log4j.appender.sig_log=org.apache.log4j.FileAppender
log4j.appender.sig_log.fileName=/dev/fd/1
log4j.appender.sig_log.fileName=/tmp/logpipe
log4j.appender.sig_log.layout=org.apache.log4j.PatternLayout
log4j.appender.sig_log.layout.ConversionPattern=shibd-sig %m
16 changes: 8 additions & 8 deletions container_files/tier-support/supervisord-tomcat.conf
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[supervisord]
logfile=/dev/fd/1 ; supervisord log file
logfile=/tmp/logpipe ; supervisord log file
logfile_maxbytes=0 ; maximum size of logfile before rotation
loglevel=error ; info, debug, warn, trace
nodaemon=true ; run supervisord as a daemon
Expand All @@ -16,24 +16,24 @@ serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix so

[program:httpd]
command=httpd -DFOREGROUND
stderr_logfile = /dev/fd/2
stderr_logfile = /tmp/logpipe
stderr_logfile_maxbytes=0
stdout_logfile = /dev/fd/1
stdout_logfile = /tmp/logpipe
stdout_logfile_maxbytes=0

[program:shibbolethsp]
;user=shibd
user=shibd
command=/usr/sbin/shibd -f -F
stderr_logfile = /dev/fd/2
stderr_logfile = /tmp/logpipe
stderr_logfile_maxbytes=0
stdout_logfile = /dev/fd/1
stdout_logfile = /tmp/logpipe
stdout_logfile_maxbytes=0

[program:tomcat]
user=tomcat
command=/opt/tomcat/bin/catalina.sh run
stderr_logfile = /dev/fd/2
stderr_logfile = /tmp/logpipe
stderr_logfile_maxbytes=0
stdout_logfile = /dev/fd/1
stdout_logfile = /tmp/logpipe
stdout_logfile_maxbytes=0

10 changes: 5 additions & 5 deletions container_files/tier-support/supervisord-tomee.conf
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[supervisord]
logfile=/dev/fd/1 ; supervisord log file
logfile=/tmp/logpipe ; supervisord log file
logfile_maxbytes=0 ; maximum size of logfile before rotation
loglevel=error ; info, debug, warn, trace
nodaemon=true ; run supervisord as a daemon
Expand All @@ -16,16 +16,16 @@ serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix so

[program:httpd]
command=httpd -DFOREGROUND
stderr_logfile = /dev/fd/2
stderr_logfile = /tmp/logpipe
stderr_logfile_maxbytes=0
stdout_logfile = /dev/fd/1
stdout_logfile = /tmp/logpipe
stdout_logfile_maxbytes=0

[program:tomee]
user=tomcat
command=/opt/tomee/bin/catalina.sh run
stderr_logfile = /dev/fd/2
stderr_logfile = /tmp/logpipe
stderr_logfile_maxbytes=0
stdout_logfile = /dev/fd/1
stdout_logfile = /tmp/logpipe
stdout_logfile_maxbytes=0

10 changes: 5 additions & 5 deletions container_files/ui/classes/log4j.properties
Original file line number Diff line number Diff line change
Expand Up @@ -28,31 +28,31 @@

## Grouper API event logging
log4j.appender.grouper_event = org.apache.log4j.FileAppender
log4j.appender.grouper_event.file = /dev/fd/1
log4j.appender.grouper_event.file = /tmp/logpipe
log4j.appender.grouper_event.append = true
log4j.appender.grouper_event.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_event.layout.ConversionPattern = grouper-ui %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Grouper API error logging
log4j.appender.grouper_error = org.apache.log4j.FileAppender
log4j.appender.grouper_error.file = /dev/fd/1
log4j.appender.grouper_error.file = /tmp/logpipe
log4j.appender.grouper_errot.append = true
log4j.appender.grouper_error.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_error.layout.ConversionPattern = grouper-ui %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
#log4j.appender.grouper_error.layout.ConversionPattern = %d{ISO8601}: %m%n

# Debug logging (Or: logging that I haven't cleaned up yet to send elsewhere)
log4j.appender.grouper_debug = org.apache.log4j.FileAppender
log4j.appender.grouper_debug.file = /dev/fd/1
log4j.appender.grouper_debug.file = /tmp/logpipe
log4j.appender.grouper_debug.append = true
log4j.appender.grouper_debug.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_debug.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_debug.layout.ConversionPattern = grouper-ui %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Benchmark logging
log4j.appender.grouper_gb = org.apache.log4j.FileAppender
log4j.appender.grouper_gb.file = /dev/fd/1
log4j.appender.grouper_gb.append = true
log4j.appender.grouper_gb.file = /tmp/logpipe
log4j.appender.grouper_gb.append = true
log4j.appender.grouper_gb.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_gb.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_gb.layout.ConversionPattern = grouper-ui %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
Expand Down
4 changes: 4 additions & 0 deletions container_files/usr-local-bin/library.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
#!/bin/sh

# Make a "console" logging pipe that anyone can write too regardless of who owns the process.
mkfifo -m 666 /tmp/logpipe
cat <> /tmp/logpipe 1>&2 &

linkGrouperSecrets() {
for filepath in /run/secrets/*; do
local label_file=`basename $filepath`
Expand Down
10 changes: 5 additions & 5 deletions container_files/ws/classes/log4j.properties
Original file line number Diff line number Diff line change
Expand Up @@ -28,31 +28,31 @@

## Grouper API event logging
log4j.appender.grouper_event = org.apache.log4j.FileAppender
log4j.appender.grouper_event.file = /dev/fd/1
log4j.appender.grouper_event.file = /tmp/logpipe
log4j.appender.grouper_event.append = true
log4j.appender.grouper_event.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_event.layout.ConversionPattern = grouper-ws %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Grouper API error logging
log4j.appender.grouper_error = org.apache.log4j.FileAppender
log4j.appender.grouper_error.file = /dev/fd/1
log4j.appender.grouper_error.file = /tmp/logpipe
log4j.appender.grouper_errot.append = true
log4j.appender.grouper_error.layout = org.apache.log4j.PatternLayout
log4j.appender.grouper_error.layout.ConversionPattern = grouper-ws %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
#log4j.appender.grouper_error.layout.ConversionPattern = %d{ISO8601}: %m%n

# Debug logging (Or: logging that I haven't cleaned up yet to send elsewhere)
log4j.appender.grouper_debug = org.apache.log4j.FileAppender
log4j.appender.grouper_debug.file = /dev/fd/1
log4j.appender.grouper_debug.file = /tmp/logpipe
log4j.appender.grouper_debug.append = true
log4j.appender.grouper_debug.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_debug.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_debug.layout.ConversionPattern = grouper-ws %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Benchmark logging
log4j.appender.grouper_gb = org.apache.log4j.FileAppender
log4j.appender.grouper_gb.file = /dev/fd/1
log4j.appender.grouper_gb.append = true
log4j.appender.grouper_gb.file = /tmp/logpipe
log4j.appender.grouper_gb.append = true
log4j.appender.grouper_gb.layout = org.apache.log4j.PatternLayout
#log4j.appender.grouper_gb.layout.ConversionPattern = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_gb.layout.ConversionPattern = grouper-ws %d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
Expand Down

0 comments on commit 96fafc6

Please sign in to comment.