Pulitore plugin

:information_source: Riepilogo Scansiona, audita e pulisce in sicurezza i residui di database orfani lasciati da plugin disinstallati.
:hammer_and_wrench: Collegamento al Repository GitHub - canbekcan/discourse-plugin-cleaner · GitHub
:open_book: Guida all’Installazione Come installare i plugin in Discourse
:computer: Sviluppo Vibe Coding - Gemini

![Screenshot 2026-03-29 at 04.57.52|690x404](upload://8sCSzrLcoN2qM3GO7zgz0Vz8f1w.png)

Caratteristiche

Quando disinstalli un plugin di Discourse, spesso lascia dietro di sé dati nascosti nel tuo database. Nel tempo, questi “residui” possono appesantire il database e complicare la manutenzione del sito. Discourse Plugin Cleaner è uno strumento amministrativo completo progettato per identificare e rimuovere in sicurezza questi dati orfani.

Le principali funzionalità includono:

  • Scansione approfondita: Scansiona più tabelle del database, inclusi Campi personalizzati (Utente, Argomento, Post, Categoria, Gruppo), Impostazioni dei plugin, Temi, Badge, Chiavi API, Webhook, Gruppi di tag e Caricamenti.
  • Modalità di audit sicura (Nessuna eliminazione automatica): Il plugin funziona rigorosamente come strumento di audit fino a quando non intervieni. Non eliminerà mai automaticamente i dati. Devi selezionare manualmente e confermare gli elementi che desideri rimuovere.
  • Valutazione del rischio: Assegna automaticamente un “Livello di rischio” (Critico, Alto, Medio, Basso, OK) agli elementi rilevati per aiutare gli amministratori a prendere decisioni informate su cosa è sicuro eliminare.
  • Tracciamento della cronologia delle versioni: Scatta istantanee dei plugin installati all’avvio. Se un plugin viene rimosso, registra la modifica dello stato, creando un record storico di ciò che è stato disinstallato e quando.
  • Interfaccia amministrativa moderna: Fornisce una dashboard elegante e intuitiva costruita con componenti in modalità strict di Ember per un’integrazione senza soluzione di continuità nell’interfaccia di amministrazione di Discourse.

Configurazione

Il plugin funziona subito con impostazioni predefinite ragionevoli. Per utilizzare il plugin:

  1. Accedi alla Dashboard: Vai alla dashboard di amministrazione di Discourse. Nella barra laterale, sotto la sezione Plugin, clicca su Plugin Cleaner.
  2. Esegui una scansione: Clicca sul pulsante “Esegui scansione approfondita”. Il sistema interrogherà il tuo database e genererà un rapporto in tempo reale di tutti i dati orfani trovati.
  3. Esamina i problemi: Esplora le schede categorizzate (Campi personalizzati, Impostazioni dei plugin, ecc.). Presta molta attenzione alle colonne Rischio e Stato.
  4. Seleziona e pulisci: Spunta le caselle accanto agli elementi orfani che desideri rimuovere.
  5. Conferma l’eliminazione: Clicca su “Elimina selezionati”. Ti verrà richiesto un avviso di conferma finale prima che i dati vengano eliminati permanentemente. Tutte le eliminazioni vengono registrate automaticamente nei Registri delle azioni dello staff di Discourse per l’audit di sicurezza.

(Nota per i caricamenti: Se vengono trovati caricamenti orfani, il plugin ti istruirà a eseguire rake uploads:clean dalla console del server per recuperare fisicamente lo spazio su disco).

Impostazioni

Puoi personalizzare la rigidità dello scanner tramite le impostazioni del sito.

Nome Descrizione
plugin_cleaner_orphan_threshold Il numero massimo di record che un campo personalizzato può avere per essere considerato “orfano”. Se un campo personalizzato ha meno record di questa soglia, verrà contrassegnato per la revisione. (Predefinito: 5, Min: 1, Max: 100)
plugin_cleaner_stale_api_key_days Il numero di giorni per cui una chiave API deve rimanere inutilizzata prima che lo scanner la contrassegni come obsoleta/orfana. (Predefinito: 90 giorni, Min: 7, Max: 365)
plugin_cleaner_stale_upload_days Il numero di giorni per cui un caricamento non collegato può esistere prima di essere contrassegnato come orfano. (Predefinito: 30 giorni, Min: 1, Max: 365)

(Nota: Questo è il progetto per comprendere come funzionano i plugin di Discourse)

1 Mi Piace