Comment lire les logs PHP du module de stats

Edit me

Comment lire les logs PHP du module de stats

Le cycle de vie d’un plan d’analyse comporte toujours un certain nombre de logs. Ces logs sont disponibles dans le fichier voozanoo.log du Module de stats.

Le module de stats est prévu pour encaisser des erreurs, elles sont normales et attendues. La difficulté consiste à séparer les “vrais” problèmes de ceux introduits par l’utilisation “classique”.

Dans la plupart des cas, on peut séparer les problèmes rencontrés en deux catégories:

  • erreur rencontrée par R
  • erreur à la récupération de données (password? firewall? proxy?)

RSYNC

Suivant le plan et les dépendances nécessaires, il peux y avoir un ou deux logs RSYNC.

L’envoi de fichier

Ressemble à cela, rarement en erreur.

2020-06-17 14:24:27 INFO (6): 20.5 MiB - Array
(
    [0] => sending incremental file list
    [1] => ./
    [2] => a1e6939d4eafd36ce58f3b94db7ccdaa/
    [3] => a1e6939d4eafd36ce58f3b94db7ccdaa/5f19da17b32c69ee85271c6de731a7c9/
    [4] => a1e6939d4eafd36ce58f3b94db7ccdaa/5f19da17b32c69ee85271c6de731a7c9/prep2consult_ssp.csv
    [5] => a1e6939d4eafd36ce58f3b94db7ccdaa/shared_files/
    [6] => a1e6939d4eafd36ce58f3b94db7ccdaa/shared_files/exportExcelWS/
    [7] => a1e6939d4eafd36ce58f3b94db7ccdaa/shared_files/exportExcelWS/52ae6aebebfe2ca7165e05bd8922b1f4
    [8] => a1e6939d4eafd36ce58f3b94db7ccdaa/shared_files/import-calcul-htlm/
    [9] => a1e6939d4eafd36ce58f3b94db7ccdaa/shared_files/import-calcul-htlm/534616e1aaac9e3a4883975559adca3d
    [10] =>
    [11] => sent 213,602 bytes  received 179 bytes  142,520.67 bytes/sec
    [12] => total size is 2,823,191  speedup is 13.21
)

La récupération des fichiers générés

Ressemble à cela, génère des faux-positifs.

2020-06-18 17:18:07 INFO (6): 4 MiB - Array
(
    [0] => receiving file list ... done
    [1] => rsync: failed to set times on "/space/applisdata/stats/r_storage/RCache/Result/amap_1824/3d4e3131a58cc23354196b724a48f238/.": Operation not permitted (1)
    [2] => ./
    [3] => log.txt
    [4] => script.html
    [5] =>
    [6] => sent 81 bytes  received 1,544 bytes  3,250.00 bytes/sec
    [7] => total size is 4,569  speedup is 2.81
    [8] => rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1655) [generator=3.1.1]
)

Les “faux-positifs” de RSYNC

Il peux apparaitre ces deux lignes dans les logs.

    [1] => rsync: failed to set permissions on "/space/applisdata/stats/r_storage/RCache/Result/amap_1814/59de8f2773aa6f57d69104dabafedc78/.": Operation not permitted (1)


    [8] => rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1655) [generator=3.1.1]

Elles ne sont PAS indicateurs d’un blocage (surêment un soucis de configuration des droits, mais les fichiers sont bien arrivés).

Comment “vite” savoir s’il y a eu un problème

À la fin de l’execution du plan, il y aura l’ajout dans les logs d’une ligne indiquant le status.

Success

  • amap: 1098
  • identifiant d’execution: fb0f10c2150294096bb665f903dc1dcd
  • résultat: success
    2020-06-18 17:24:21 INFO (6): 4 MiB - amap_1098-_-fb0f10c2150294096bb665f903dc1dcd - R execution done (success)
    

Fail

  • amap: 1814
  • identifiant d’execution: 879a1e4e78634658a504ead449e13024
  • résultat: fail
    2020-06-17 14:24:30 INFO (6): 4 MiB - amap_1814-_-879a1e4e78634658a504ead449e13024 - R execution done (fail)
    

Que faire lors d’un status “fail”?

C’est dans ce cas précis que les logs RSYNC nous sont utiles. Ce qui nous intéresse ne sont pas les messages de RSYNC, mais plutôt les fichiers transférés.

2020-06-17 14:24:30 INFO (6): 4 MiB - Array
(
    [0] => receiving file list ... done
    [1] => rsync: failed to set permissions on "/space/applisdata/stats/r_storage/RCache/Result/amap_1814/879a1e4e78634658a504ead449e13024/.": Operation not permitted (1)
    [2] => ./
    [3] => log.txt
    [4] =>
    [5] => sent 54 bytes  received 211 bytes  530.00 bytes/sec
    [6] => total size is 97  speedup is 0.37
    [7] => rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1655) [generator=3.1.1]
)

2020-06-17 14:24:30 INFO (6): 4 MiB - amap_1814-_-879a1e4e78634658a504ead449e13024 - R execution done (fail)

Lors d’une execution “classique” (hors export), il y a deux fichiers principaux.

Le chemin vers ces fichiers est précisé dans les logs : dans l’exemple ci-dessus, les fichiers ont été placés dans le dossier “/space/applisdata/stats/r_storage/RCache/Result/amap_1814/879a1e4e78634658a504ead449e13024/”.

log.txt

C’est le fichier contenant tous les logs en sortie de R.

Si une erreur R est survenue, c’est dans ce fichier que l’on trouvera plus d’informations.

script.html

C’est le résultat de l’exécution. Si le fichier existe, l’execution est un succès (sinon non).


À partir de ces informations, on couvre la plupart des problèmes qui peuvent survenir.