Jump to content

Rozšíření:EventLogging

From mediawiki.org
This page is a translated version of the page Extension:EventLogging and the translation is 100% complete.
Příručka k rozšířením MediaWiki
EventLogging
Stav rozšíření: stabilní
Zavádění Speciální stránka , Databáze , ContentHandler
Popis Poskytuje rámec pro protokolování analytických událostí
Autoři Ori.livnehdiskuse
Nejnovější verze průběžné aktualizace
MediaWiki 1.33+
PHP 5.5+
Změny v databázi Ne
  • $wgEventLoggingStreamNames
  • $wgEventLoggingSchemaApiUri
  • $wgEventLoggingServiceUri
  • $wgEventLoggingQueueLingerSeconds
  • $wgEventLoggingBaseUri
  • $wgEventLoggingSchemas
  • $wgEventLoggingDBname
Licence GNU General Public License 2.0 nebo novější
Stáhnout
Přeložte rozšíření EventLogging, používá-li lokalizaci z translatewiki.net
Vagrant role eventlogging
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření EventLogging umožňuje shromažďovat strukturovaná data o tom, jak uživatelé interagují se stránkami MediaWiki.

Funkce

  • EventLogging podporuje protokolování na straně klienta z JavaScriptu a protokolování na straně serveru z PHP.
  • Chování protokolování lze dynamicky konfigurovat pomocí Extension:EventStreamConfig .
  • Události jsou objekty JSON definované verzovanými schématy JSONS, které jsou uloženy v repozitáři schémat git.
  • Rozšíření neobsahuje žádný back-endový kód pro přenos, analýzu nebo načítání těchto událostí. Pokud vás zajímají jednotlivé komponenty, které Wikimedie pro tyto účely používá, podívejte se na #EventLogging na Wikimedii.

EventLogging na Wikimedii

Tato stránka pojednává o obecném použití rozšíření EventLogging.

Wikimedia používá rozšíření EventLogging jako součást širšího systému pro shromažďování, agregaci, ukládání a analýzu uživatelských dat v rámci limitů stanovených jejími zásadami ochrany osobních údajů a pokyny pro uchovávání dat. Dokumentaci k tomuto systému naleznete v části wikitech:Event Platform.

Instalace

  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného EventLogging ve vaší složce extensions/.
    Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/EventLogging
    
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'EventLogging' );
    $wgEventLoggingBaseUri = '/beacon/event';
    $wgEventLoggingServiceUri = '/beacon/intake-analytics';
    $wgEventLoggingStreamNames = false;
    
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.


Instalace Vagrant:

  • Pokud používáte Vagrant , instalujte s těmito parametry vagrant roles enable eventlogging --provision

Konfigurace umístění schématu

Ve výchozím nastavení bude rozšíření hledat schémata na Meta-Wiki. Příslušná výchozí nastavení jsou:

# (default) $wgEventLoggingSchemaApiUri = 'https://meta.wikimedia.org/w/api.php';
# (default) $wgEventLoggingDBname = 'metawiki';

Chcete-li použít místní schémata nebo schémata z centrální wiki vaší vlastní wikifarmy, musíte je přepsat. Např. pro použití jmenného prostoru Schema lokální wiki nastavte

$wgEventLoggingSchemaApiUri = $wgServer . '/w/api.php';
$wgEventLoggingDBname = $wgDBname;

(a ujistěte se, že uživatelský účet, který bude schémata vytvářet, je automaticky potvrzen).

Záznam událostí pomocí EventLogging


Vývoj rozšíření EventLogging

Nastavení pro vývojáře

Jako vývojář budete chtít nastavit a používat EventLogging na vaší vývojářské wiki, abyste simulovali jeho použití v produkci.

Používání Dockeru

Podívejte se na stránku MediaWiki-Docker/Configuration recipes/EventLogging

Použití mediawiki-vagrant

Pokud vyvíjíte pomocí mediawiki-vagrant, vše, co potřebujete, je zapouzdřeno v roli eventlogging. Chcete-li to povolit, spusťte:

$ vagrant roles enable eventlogging
$ vagrant provision

Pro vývoj v JavaScriptu

Pokud pracujete na JavaScriptovém klientovi, budete muset nainstalovat závislosti s přepínačem npm install ze složky, ve které vyvíjíte. Pak můžete například použít npm test ke spuštění ESLintu. Níže uvedená část "Jak spouštět testy" ukazuje, jak zobrazit výsledky testů JavaScriptu.

Při přidání parametru trackdebug=true do adresy URL se v konzoli v nástrojích pro vývojáře prohlížeče zobrazí spouštění protokolování událostí.

Jak spustit testy

Existují testy PHP, testy Pythonu a testy JavaScriptu.

Chcete-li spustit JavaScriptové testy, navštivte stránku Special:JavaScriptTest/qunit na vaší vývojářské wiki. (Podívejte se na stránku Příručka:Testování jednotek JavaScriptu .)

Pro spouštění PHP testů používáme PHPUnit. Ujistěte se, že je nainstalován, a poté:

$ vagrant ssh
vagrant@mediawiki-vagrant:/vagrant/mediawiki$ composer phpunit:entrypoint -- extensions/EventLogging/testsEventLoggingExtensionFunctionsTest.php