Outils pour utilisateurs

Outils du site


benevoles:technique:yunohost_mutu

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
benevoles:technique:yunohost_mutu [2024/01/05 19:54] – Remplacé "défini" par "renseigné" scapharnaumbenevoles:technique:yunohost_mutu [2024/01/14 19:09] – [Nettoyer la base de données] gauthier67
Ligne 181: Ligne 181:
  
 ===== Matrix ===== ===== Matrix =====
-==== Diminuer la taille de la base de donnée ==== +==== Nettoyer la base de données ====
-TODO+
  
 +<markdown>
 +Niveau 1 - via l'interface web Synapse Admin
 +* Donner des droits administrateur à votre compte matrix sans-nuage.fr permet de vous connecter à https://synadmin.sans-nuage.fr/ pour faire des actions d'administration basiques. Ca passe directement par une requête dans la BDD postgresql matrix_synapse : 
 +`su --command="psql matrix_synapse" postgres <<< "UPDATE users SET admin = 1 WHERE name = '@user:sans-nuage.fr'"`
 +* Vous pouvez par exemple supprimer les comptes invité plus vieux qu'une semaine
 +  * Afficher 50 lignes par pages
 +  * Sélectionner tout
 +  * "effacer les données de l'utilisateur"
  
 +Niveau 2 utilisation de l'API d'administration synadm
 +* Se connecter à 
 +* Ensuite aller dans votre client Element pour récupérer un jeton pour l'API synapse 
 +  * Tout en bas des paramètres, section `Aide et A propos` > `Advanced` > `jeton d'accès`
 +* Ajouter les variables suivantes à votre path :
 +```
 +export SYNAPSE_HS=matrix.sans-nuage.fr
 +export SYNAPSE_TOKEN=le_jeton_recupere
 +```
 +\c matrix_synapse
 +copy (select room_id, count(*) as cnt from events group by room_id order by cnt desc) to '/tmp/rooms_to_clean' csv;
 +SELECT room_id, stream_ordering, COUNT(event_id) AS c FROM events GROUP BY room_id, stream_ordering ORDER BY c DESC;
 +
 +SELECT nspname || '.' || relname AS "relation",
 +    pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
 +  FROM pg_class C
 +  LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
 +  WHERE nspname NOT IN ('pg_catalog', 'information_schema')
 +    AND C.relkind <> 'i'
 +    AND nspname !~ '^pg_toast'
 +  ORDER BY pg_total_relation_size(C.oid) DESC
 +  LIMIT 20;
 +
 +jq -r '.rooms | map(select(.creator == "@signalbot:sans-nuage.fr")) | .[].room_id' < rooms.json | xargs -ti $SHELL -ic 'synadm POST '"'"'v1/purge_history/{}'"'"' -d '"'"'{"purge_up_to_ts":'"$(date -d-365days +%s000)"'}'"'"
 +
 +jq -r '.rooms | map(select(.creator == "@whatsappbot:sans-nuage.fr")) | .[].room_id' < rooms.json | xargs -ti $SHELL -ic 'synadm POST '"'"'v1/purge_history/{}'"'"' -d '"'"'{"purge_up_to_ts":'"$(date -d-365days +%s000)"'}'"'"
 +
 +SELECT * FROM state_groups_state LIMIT 5;
 +SELECT COUNT(*) as nb FROM state_groups_state LIMIT 5;
 +SELECT COUNT(*) as nb FROM state_groups_state;
 +
 +
 +REINDEX DATABASE CONCURRENTLY matrix_synapse;
 +ou
 +REINDEX DATABASE matrix_synapse;
 +
 +VACUUM 
 +ou
 +VACUUM FULL;
 +semblent avoir le même résultat
 +\q
 +
 +Autres commandes utiles :
 +```
 +su -c /usr/bin/psql postgres
 +synadm GET 'v2/users?name=bot' | jq
 +postgres=# SELECT pg_size_pretty( pg_database_size( 'matrix_synapse' ) );
 +```
 +
 +</markdown>
 ===== Conflit APT entre mobilizon et onlyoffice ===== ===== Conflit APT entre mobilizon et onlyoffice =====
 OBSOLETE (mobilizon_ynh utilise maintenant des versions précompilées) OBSOLETE (mobilizon_ynh utilise maintenant des versions précompilées)
benevoles/technique/yunohost_mutu.txt · Dernière modification : 2024/05/23 23:35 de gauthier67