Dans les versions 2.1, 3.0 et 3.1, OpenIDM fournit un script shell qui permet de mettre en place la rotation des fichiers d'audit (OPENIDM_HOME/bin/create-openidm-logrotate.sh).
Par contre ce script a 2 inconvénients à mon sens :
Dans ce cas, on peut vite arriver à avoir généré des centaines de milliers de fichiers sur l'espace d'un mois - c'est ce qui m'est arrivé chez un client.
Le fichier de définition des rotations de fichier par défaut contient :
${OPENIDM_HOME}/audit/* {
daily
missingok
rotate 54
compress
}
Il faut le corriger en :
${OPENIDM_HOME}/audit/*.csv {
daily
missingok
rotate 54
compress
}
pour éviter de faire tourner et compresser les fichiers déjà existants.
On aura donc par exemple :
$ cat /etc/logrotate.d/openidmlogs
/products/openidm/audit/*.csv
daily
missingok
rotate 54
compress
}
Depuis la version 4, le script n'est plus fourni car on peut déclencher la rotation des fichiers d'audit via une commande REST (cf. Integration Guide, § 18.9.1).
Par exemple, pour déclencher la rotation du fichier access.csv :
curl \
--cacert self-signed.crt \
--header "X-OpenIDM-Username: openidm-admin" \
--header "X-OpenIDM-Password: openidm-admin" \
--request POST \
"https://localhost:8443/openidm/audit/access?handler=csv&_action=rotate"
Il faut bien évidemment répéter la commande pour les fichiers activity.csv et recon.csv.