이 콘텐츠는 선택한 언어로 제공되지 않습니다.

Chapter 12. Enabling Logshifter


Using logshifter enables automatic log rotation and consolidation across cartridges in a gear. In OpenShift Enterprise, cartridges can log to Syslog using logshifter. For more information about logshifter, see the logshifter README file.
When writing a cartridge control script, it is typical to spawn a runtime process such as java or mongod. To take advantage of logshifter, redirect the standard out (STDOUT) and standard error (STEDRR) streams of the process to the /usr/bin/logshifter file. For example, for a Java-based cartridge:

Example 12.1. Redirecting Logs Using Logshifter:

java ... |& /usr/bin/logshifter -tag my-cartridge &
Copy to Clipboard Toggle word wrap
Using this method, java is started in the background, and all output produced by the application is logged through logshifter. The -tag argument must be a string unique to the cartridge.
Tips for PID Management

In the example above, the standard pipe operator is used from a shell script to redirect logs from the cartridge process to logshifter. This works well for programs which are capable of managing a PID file internally. However, for cartridges which bootstrap a process and cannot manage a PID file by itself, using a simple pipe operator can be problematic. When piping programs using a shell, the programs are typically started in parallel, rendering the $! variable unreliable for determining the PID of the cartridge process. For these cases, setting up a named pipe can allow the cartridge to use logshifter and also manage the PID of the process. The following example demonstrates the setup of a named pipe used by a Java cartridge which preserves the reliability of $! so the cartridge script can manage the PID file manually:

Example 12.2. Setting Up Named Pipe:

LOGPIPE=${OPENSHIFT_HOMEDIR}/app-root/runtime/logshifter-my-cartridge
rm -f $LOGPIPE && mkfifo $LOGPIPE

/usr/bin/logshifter -tag my-cartridge < $LOGPIPE &
java ... &> $LOGPIPE &
echo $! > $OPENSHIFT_MY_CARTRIDGE_DIR/my-cartridge.pid
Copy to Clipboard Toggle word wrap
Setting up the named pipe manually provides the most flexibility for managing both the logshifter and cartridge processes.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동