Commit 12b44120 authored by Jonathan Schaeffer's avatar Jonathan Schaeffer
Browse files

Merge branch 'master' of gricad-gitlab.univ-grenoble-alpes.fr:OSUG/RESIF/validated_data_reporter

parents e34a3ec2 b7e7040e
This diff is collapsed.
#+Title: RESIF data reporter
Cet outil collecte sur un ou plusieurs espaces disques en structure SDS l'espace occupé par les réseaux sismo.
* À propos
- licence : Ce projet est livré sous licence CeCILLV-2.1
- auteur : Jonathan Schaeffer <jonathan.schaeffer@univ-grenoble-alpes.fr>
** Collecte des volumes
Les données sont dans un ou plusieurs dossier(s) contenant un sous-dossier par année et pour chaque année, un dossier par réseau.
Dans le rapport final, on souhaite distinguer les réseaux permanents des expériences temporaires.
La représentation des mesures dans influxdb aura la structure suivante :
#+BEGIN_EXAMPLE json
{
"measurement": "volumes",
"tags": {
"year": "2016",
"network": "Z3",
"class": "permanent"
},
"time": ""
"fields": {
"data": 123456
}
}
#+END_EXAMPLE
Les données collectées sont écrites en JSON dans un fichier tampon.
* Configuration
Le script de collecte cherche un fichier de configuration =config.yml= dans son dossier de travail, ou dans =~/.config= ou dans =/etc=.
Le fichier =config.yml.example= fournit toute la documentation nécessaire pour un paramétrage initial.
* Options
Par défaut, le script collecte les données (en faisant des =du=), les compile et les écrit dans le fichier =data.yaml=. L'option =--human= demande au script de sortir un rapport humainement lisible.
Si les données contenues dans =data.json= ne sont pas plus anciennes que ce que spécifie la configuration =data_cache_ttl= (en jour), alors le script scanne le fichier data.json pour le restituer et n'effectue pas le scan des volumes.
* Tester
** Lancer des tests unitaires
: pytest
** Lancer un docker postgres
: docker pull postgres
: docker run --name pg -p 5432:5432 -e POSTGRES_PASSWORD=mysecretpassword -d postgres
** Configuration
Un fichier de Configuration pour les tests :
#+BEGIN_EXAMPLE yaml
volumes:
- path: /tmp/pytest-of-schaeffj/pytest-22/validated/
type: validated
- path: /tmp/pytest-of-schaeffj/pytest-22/bud
type: bud
postgres:
host: localhost
database: stats
port: 5432
user: postgres
password: mysecretpassword
influxdb:
measurement: resifstats
server: localhost
port: 8086
ssl: True
verify_ssl: False
user: user
password: secret
database: sandbox
tags:
- host: resif8.u-ga.fr
metadata: # Information about the gathered data. Used to tag the timeserie values
permanent_networks: # List all permanent networks here. Otherwise, they will be considered as temporary
- CL
- GL
- MQ
- ND
- PF
- RD
- FR
- G
- RA
- WI
#+END_EXAMPLE
** Tester le programme complet :
: python resif_data_reporter.py --config config.yml
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment