Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Matomo/Maintenance

De AJLSM
Version datée du 20 octobre 2026 à 11:04 par Jlarvers (discussion | contributions) (Page créée avec « = Maintenance de Matomo = == Objectif == Cette procédure décrit la maintenance des installations Matomo hébergées sur les VM AJLSM. Elle couvre : * La surveillance... »)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Maintenance de Matomo

Objectif

Cette procédure décrit la maintenance des installations Matomo hébergées sur les VM AJLSM.

Elle couvre :

  • La surveillance des services.
  • Les mises à jour de Matomo.
  • Les sauvegardes et la restauration.
  • L'archivage des statistiques.
  • La vérification de la collecte.
  • Les contrôles de sécurité.

Voir également :

1. Vérifications courantes

Version de Matomo

cd /var/www/matomo
sudo -u www-data php console core:version

Services Apache et MariaDB

systemctl is-active apache2
systemctl is-active mariadb

Si la VM utilise PHP-FPM, vérifier également le service correspondant :

systemctl is-active php8.4-fpm

Important : PHP-FPM n'est pas nécessaire lorsque PHP est exécuté par Apache avec `mod_php`, comme sur AD64.

Espace disque

df -h
du -sh /var/www/matomo

Taille de la base Matomo

sudo mariadb -t -e "
SELECT
    table_schema AS base,
    ROUND(SUM(data_length + index_length)/1024/1024, 2) AS taille_Mo
FROM information_schema.tables
WHERE table_schema = 'matomo'
GROUP BY table_schema;
"

La taille de la base doit être surveillée, notamment lorsque le nombre de visites et la durée de conservation des données augmentent.

2. Mise à jour de Matomo

Méthode habituelle AJLSM

Les mises à jour de Matomo sont proposées directement dans son interface d'administration.

Sur AD64, les précédentes mises à jour ont été réalisées depuis cette interface, sans passer par le terminal.

Cette méthode est retenue comme procédure habituelle.

Avant la mise à jour

  1. Vérifier la compatibilité de la nouvelle version avec PHP et MariaDB.
  2. Vérifier l'espace disque disponible.
  3. Effectuer une sauvegarde de la base MariaDB.
  4. Sauvegarder les fichiers de configuration et les éventuels plugins personnalisés.
  5. Vérifier que les sauvegardes sont exploitables.

Exemple de sauvegarde manuelle de la base :

sudo mariadb-dump --single-transaction \
  --routines --triggers --events \
  matomo > "$HOME/matomo-$(date +%Y%m%d-%H%M%S).sql"

Attention : cette commande crée une sauvegarde ponctuelle dans le répertoire personnel de l'utilisateur courant. Elle ne remplace pas la stratégie de sauvegarde générale de la VM.

Vérifier également les sauvegardes existantes avant toute intervention importante.

Effectuer la mise à jour

  1. Se connecter à l'administration Matomo depuis une adresse IP autorisée.
  2. Ouvrir la notification de nouvelle version.
  3. Lire les informations et les prérequis.
  4. Lancer la mise à jour depuis l'interface.
  5. Effectuer, si demandé, la mise à jour de la base de données.
  6. Attendre la confirmation de fin d'opération.

Ne pas interrompre une mise à jour en cours.

Après la mise à jour

Vérifier :

  • La version affichée par Matomo.
  • L'accès à l'interface d'administration.
  • L'absence d'erreurs dans les journaux.
  • Le fonctionnement des rapports.
  • La réception de nouvelles visites.
  • Le fonctionnement des plugins installés.

Commande de vérification :

cd /var/www/matomo
sudo -u www-data php console core:version

3. Sauvegardes

Éléments à sauvegarder

Une sauvegarde exploitable doit couvrir :

  • La base MariaDB `matomo`.
  • Le fichier `/var/www/matomo/config/config.ini.php`.
  • Les plugins ou personnalisations non fournis par l'installation standard.
  • Les autres fichiers spécifiques à l'installation, s'il en existe.

Le code standard de Matomo peut être réinstallé, mais la base de données et la configuration sont indispensables à la restitution de l'installation.

Sauvegarde de la base

Exemple de sauvegarde compressée :

sudo mariadb-dump --single-transaction \
  --routines --triggers --events \
  matomo | gzip > "$HOME/matomo-$(date +%Y%m%d-%H%M%S).sql.gz"

Protéger les sauvegardes : elles peuvent contenir des informations sur les visiteurs et des données de configuration sensibles.

Sauvegarde de la configuration

sudo tar -czf "$HOME/matomo-config-$(date +%Y%m%d-%H%M%S).tar.gz" \
  -C /var/www/matomo \
  config

Les archives doivent être conservées dans un emplacement protégé, idéalement distinct de la VM.

Sauvegardes de l'infrastructure

Avant d'ajouter une sauvegarde spécifique, vérifier si Matomo est déjà couvert par :

  • Les sauvegardes de la VM Proxmox.
  • Les sauvegardes applicatives existantes.
  • Les sauvegardes MariaDB éventuellement configurées sur la VM.

Important : la présence d'une sauvegarde ne garantit pas sa restaurabilité. Un test de restauration doit être prévu.

Restauration

Une restauration doit être préparée en fonction de l'incident.

La procédure générale consiste à :

  1. Préserver l'état actuel avant toute intervention.
  2. Identifier une sauvegarde cohérente de la base et des fichiers.
  3. Restaurer dans un environnement de test lorsque cela est possible.
  4. Vérifier la compatibilité entre la version du code Matomo et le schéma de la base restaurée.
  5. Restaurer les données et la configuration.
  6. Vérifier les permissions.
  7. Tester l'interface et la collecte.

Ne pas restaurer directement une ancienne base sur une installation Matomo plus récente sans avoir vérifié la compatibilité.

4. Archivage des statistiques

Principe

Matomo calcule des rapports statistiques à partir des données de visites.

Deux méthodes principales sont possibles :

  • Archivage déclenché par la consultation des rapports dans le navigateur.
  • Archivage automatique par une tâche planifiée exécutant `core:archive`.

Méthode 1 : archivage depuis le navigateur

Cette méthode est utilisée sur AD64 en octobre 2026.

Dans l'administration Matomo :

Administration → Système → Paramètres généraux → Paramètres d'archivage

Configuration constatée :

Paramètre Valeur AD64
Archiver les rapports lorsqu'ils sont affichés depuis le navigateur Oui
Archiver les rapports au plus toutes les X secondes 900 secondes (15 minutes)

Les rapports peuvent donc être calculés lors de leur consultation.

Cette configuration convient à une installation de faible volume, notamment lors de la mise en service.

Elle peut cependant provoquer des calculs au moment où un utilisateur consulte les statistiques.

Méthode 2 : archivage automatique

Pour une installation plus sollicitée, un archivage planifié est préférable.

Matomo fournit la commande :

sudo -u www-data php /var/www/matomo/console core:archive

Attention : cette commande lance réellement l'archivage. Ne pas l'exécuter pour une simple vérification.

Pour afficher les options sans lancer de traitement :

sudo -u www-data php /var/www/matomo/console core:archive --help

Exemple de tâche cron

Exemple de configuration pour un archivage toutes les heures :

0 * * * * /usr/bin/php /var/www/matomo/console core:archive --url=https://matomo.exemple.fr/ >> /var/log/matomo-archive.log 2>&1

Cette ligne est un exemple de configuration, et non une tâche déjà installée sur AD64.

Elle doit être adaptée avant utilisation :

  • À l'URL réelle de Matomo.
  • À l'utilisateur d'exécution PHP.
  • Aux permissions du fichier journal.
  • À la fréquence d'archivage souhaitée.
  • Aux restrictions réseau ou HAProxy.

Le processus d'archivage doit pouvoir joindre les ressources Matomo nécessaires. Une interface d'administration protégée par HAProxy peut imposer une configuration particulière de l'URL utilisée.

Passage à l'archivage automatique

Avant de mettre en service une tâche planifiée :

  1. Vérifier le bon fonctionnement de la commande `core:archive`.
  2. Vérifier que l'URL utilisée est accessible depuis la VM.
  3. Configurer une tâche planifiée sous l'utilisateur approprié.
  4. Vérifier les journaux d'exécution.
  5. Contrôler que les rapports sont correctement actualisés.
  6. Désactiver ensuite l'archivage déclenché par le navigateur dans les paramètres généraux de Matomo, conformément à la configuration retenue.

Ne pas désactiver l'archivage depuis le navigateur avant d'avoir confirmé le fonctionnement de l'archivage automatique.

5. Vérification de la collecte

Tests HTTP

Depuis une connexion extérieure au réseau AJLSM :

MATOMO_URL="https://matomo.exemple.fr"

for RESOURCE in matomo.js matomo.php; do
    echo "===== /$RESOURCE ====="

    curl -sS -o /dev/null -w "HTTP %{http_code}\n" \
      "$MATOMO_URL/$RESOURCE"
done

Pour une installation utilisant les ACL HAProxy décrites dans Matomo/HAProxy, les ressources de collecte doivent rester accessibles publiquement.

Vérification en base

SELECT
    idsite,
    COUNT(*) AS visites,
    MAX(visit_last_action_time) AS derniere_activite
FROM matomo_log_visit
GROUP BY idsite;

La présence de visites récentes confirme que des données sont enregistrées.

Cette requête ne permet cependant pas, à elle seule, de vérifier l'exactitude de tous les rapports.

Vérification depuis Drupal

Consulter une page publique de l'application Drupal suivie.

Vérifier ensuite :

  • Que le script Matomo est chargé.
  • Qu'une requête de suivi est transmise.
  • Qu'aucune erreur de suivi n'apparaît.
  • Que la visite est enregistrée sur le bon identifiant de site Matomo.

Voir Matomo/Drupal.

6. Certificats et sécurité

HTTPS

Pour les installations publiées par HAProxy, le certificat public est généralement géré sur les répartiteurs.

Vérifier la date d'expiration :

openssl s_client \
  -connect matomo.exemple.fr:443 \
  -servername matomo.exemple.fr </dev/null 2>/dev/null \
  | openssl x509 -noout -subject -issuer -dates

Vérifier également le renouvellement automatique et le déploiement effectif du certificat.

Voir Matomo/HAProxy.

Restrictions d'accès

Lorsque l'administration est réservée à AJLSM :

  • L'interface Matomo doit être inaccessible depuis une IP extérieure non autorisée.
  • Les points de collecte nécessaires doivent rester accessibles.
  • L'accès à l'administration doit rester possible depuis le réseau autorisé.

Permissions

Vérifier périodiquement les permissions des fichiers sensibles :

stat -c '%A %a %U:%G %n' \
  /var/www/matomo \
  /var/www/matomo/config/config.ini.php

Voir Matomo/Installation pour les permissions recommandées.

7. Journaux et diagnostic

En cas de dysfonctionnement, consulter les journaux Apache :

sudo journalctl -u apache2 --since "1 hour ago" --no-pager

Les fichiers de logs Apache peuvent également être consultés dans `/var/log/apache2/`, selon la configuration du VirtualHost.

Pour MariaDB :

sudo journalctl -u mariadb --since "1 hour ago" --no-pager

Vérifier aussi les journaux et messages d'erreur propres à Matomo.

Voir Matomo/Debug.

8. Retour d'expérience AD64 — octobre 2026

Élément Situation constatée
Matomo Version 5.10.1
Serveur ad64
Répertoire /var/www/matomo
Serveur web Apache avec mod_php et mpm_prefork
Base de données MariaDB, base matomo
Taille de la base 5,70 Mo au 20 octobre 2026
Mise à jour Matomo Depuis l'interface d'administration
Archivage Déclenché depuis le navigateur
Fréquence d'archivage configurée 900 secondes
Cron core:archive Aucune tâche identifiée dans les emplacements examinés
Sites suivis Drupal Internet et Salle de lecture
Administration Restreinte par HAProxy aux adresses AJLSM autorisées

Points restant à vérifier

  • La couverture exacte de Matomo par les sauvegardes existantes.
  • La présence éventuelle d'une sauvegarde MariaDB indépendante.
  • Le test de restauration.
  • Le renouvellement effectif du certificat public lors de sa prochaine échéance.

Conclusion : AD64 fonctionne actuellement avec un archivage à la demande et des mises à jour réalisées depuis l'interface Matomo. Il n'est pas nécessaire de modifier immédiatement cette configuration. Pour les futures installations, les sauvegardes et l'archivage automatique devront être évalués selon le volume et les exigences du projet.