web-dev-qa-db-fra.com

Faire pivoter la sortie Nohup

Je travaille avec weblogic 10.3.5 sous Ubuntu 12.04.

Weblogic a commencé à utiliser

Nohup ./startWebLogic.sh >Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/logs/AdminServer.out 2>&1 </dev/null &

Cela fonctionne bien et maintenant je voudrais faire pivoter AdminServer.out en utilisant logrotate mais il semble que ce ne soit pas si facile à faire. En recherchant sur Internet, il n'est pas très clair de comprendre si c'est possible ou non.

J'ai essayé d'utiliser les options copytruncate. Lorsque le logiciel logrotate est en cours d'exécution, la taille du fichier devient 0 mais revient à la taille d'origine après la première "écriture" du serveur.

Aussi essayé de renommer le fichier. Le serveur écrit toujours dans le fichier renommé.

Il semble que le serveur ait uniquement un pointeur sur un fichier, indépendamment de son nom ou de sa taille.

Donc, y a-t-il une solution ? Utilisation de logrotate ou non.

--MODIFIER--

J'ai aussi essayé avec

#!/bin/bash
mkdir -p tmp
if [ ! -p tmp/weblogic.fifo ]; then
    mkfifo tmp/weblogic.fifo
fi
tail -f tmp/weblogic.fifo >> Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/logs/AdminServer.out &
Nohup ./startWebLogic.sh > /home/me/tmp/weblogic.fifo 2>&1 </dev/null &

Je ne sais pas si c'est correct mais ... il y a au moins un problème: parfois, il raccroche pour écrire dans le fichier. Parfois quelques secondes mais au bout d'un moment (même avant le démarrage du serveur) ... indéfiniment!

Je ne peux donc pas tester le logrotate.

3
tweetysat

La solution était finalement si simple

Nohup ./startWebLogic.sh 2>&1 </dev/null | cat >> AdminServer.out &

et maintenant le AdminServer.out peut être pivoté avec logrotateet l'option copytruncate.

3
tweetysat