diff --git a/infra/infos.libre-service.eu.md b/infra/infos.libre-service.eu.md index 1a7642c..0247631 100644 --- a/infra/infos.libre-service.eu.md +++ b/infra/infos.libre-service.eu.md @@ -41,7 +41,50 @@ Dossiers de travail : mkdir -p /srv/statoolinfos/{conf,inputs,well-known} ``` -## Ajout d'un service +# Ajout d'un nouveau service + +Tout se passe sur la vm du service, sauf la dernière étape. + +## Configuration de Java +Java : +``` +apt-get install openjdk-11-jre-headless +``` + +## Configuration d'Apache + +Création d'un fichier générique `cat /etc/apache2/statoolinfos.conf` qui sera includé plus tard : +``` + Alias "/.well-known/statoolinfos/" "/srv/statoolinfos/well-known/statoolinfos/" + + Options +Indexes + Require all granted + +``` + +## Configuration de Nginx +Création d'un fichier générique `cat /etc/nginx/statoolinfos.conf` qui sera includé plus tard : +``` + location /.well-known/statoolinfos/ + { + types + { + text/plain properties; + } + + alias /srv/statoolinfos/well-known/statoolinfos/; + autoindex on; + } +``` + +## Espace de travail +Dossiers de travail : +``` +mkdir -p /srv/statoolinfos/{conf,well-known} +mkdir -p /srv/statoolinfos/well-known/statoolinfos/ +``` + +## Déclaration du service Configurer l'accès well-known en ajoutant à la fin de la configuration Apache du site : ``` # StatoolInfos @@ -54,25 +97,65 @@ Ou au début du fichier de la configuration Nginx du site : include /etc/nginx/statoolinfos.conf; ``` -Puis ajouter : - * un fichier de configuration dans /srv/statoolinfos/conf/foo.libre-service.eu.conf ; - * un fichier de déclaration dans /srv/statoolinfos/intpus/foo.libre-service.eu.properties. +Créer le fichier properties de type service à `/srv/statoolinfos/well-known/statoolinfos/foo.libre-service.eu.properties`. Une documentation des propriétés est disponible là : https://framagit.org/chatons/chatonsinfos/-/blob/master/MODELES/service.properties -Peupler le well-known : +Vérifier les permissions de lecture : ``` -cd /srv/statoolinfos/ -./bin/statoolinfos build conf/foo.libre-service.eu.conf +chmod go+r /srv/statoolinfos/well-known/statoolinfos/* ``` -## Actualisation d'un service +## Renseigner le fichier properties d'organisation -Sur la vm du service, éditer le fichier de déclaration du service `/srv/statoolinfos/inputs/foo.libre-service.eu.properties`. - -Une documentation des propriétés est disponible là : https://framagit.org/chatons/chatonsinfos/-/blob/master/MODELES/service.properties - -Puis re-peupler le dossier well-known exposé sur le web : +Sur la vm principale de StatoolInfos, éditer `/srv/statoolinfos/well-known/statoolinfos/services.properties` et ajouter une ligne `subs` : ``` -cd /srv/statoolinfos/ -./bin/statoolinfos build conf/foo.libre-service.eu.conf +subs.foo=https://foo.libre-service.eu/.well-known/statoolinfos/foo.libre-service.eu.properties +``` + +# Génération de métrics + +## Déploiement de statoolinfos + +Récupérer la dernièer version de StatoolInfos sur https://forge.devinsy.fr/devinsy/statoolinfos/releases. Puis placer dans `/srv/statoolinfos/bin/` les fichiers `statoolinfos.jar` et `statoolinfos.sh`. Faire un lien : +``` +cd /srv/statoolinfos/bin/ +ln -s statoolinfos.sh statoolinfos +``` + +## Configuration +Créer un fichier de configuration dans `/srv/statoolinfos/conf/foo.libre-service.eu.conf` : +``` +conf.class=service +conf.protocol=StatoolInfos-0.5 + +conf.probe.types=HttpAccessLog, HttpErrorLog +conf.probe.httpaccesslog.file=/var/log/nginx/foo.libre-service.eu-access.log* +conf.probe.httperrorlog.file=/var/log/nginx/foo.libre-service.eu-error.log* +conf.probe.target=/srv/statoolinfos/well-known/statoolinfos/foo.libre-service.eu-metrics.properties +``` + +Vérifier les permissions de lecture : +``` +chmod go+r /srv/statoolinfos/well-known/statoolinfos/* +``` + +## Génération + +Faire une première génération de métrics : +``` +/srv/statoolinfos/bin/statoolinfos probe -full /srv/statoolinfos/conf/ +``` +Vérifier les permissions de lecture : +``` +chmod go+r /srv/statoolinfos/well-known/statoolinfos/* +``` + +Créer un cron `/etc/cron.d/staoolinfos` : +``` +2 * * * * root /srv/statoolinfos/bin/statoolinfos probe -previousday /srv/statoolinfos/conf/ >> /srv/statoolinfos/statoolinfos-cron.log +``` + +Faire un lien : +``` +cd /srv/statoolinfos +ln -s /etc/cron.d/statoolinfos cron ``` -Puis vérifier dans https://infos.libre-service.eu/