Rozšíření: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 |
|
|
| 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
EventLoggingve vaší složceextensions/.
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;
Dokončeno – Přejděte na stránku Special:Versionvaší 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
- Extension:EventLogging/Guide – k vývoji a nasazení schémat protokolování událostí a dalším
- Extension:EventLogging/Programming – tipy a návrhy pro vývojáře, kteří píší kód pro zaznamenávání událostí
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
| Toto rozšíření se používá na jednom nebo více projektech Wikimedia. Pravděpodobně to znamená, že rozšíření je stabilní a funguje dostatečně dobře, aby jej mohly používat weby s tak vysokou návštěvností. Vyhledejte tento název rozšíření v konfiguračních souborech CommonSettings.php a InitialiseSettings.php Wikimedie, abyste viděli, kde je nainstalováno. Úplný seznam rozšíření nainstalovaných na konkrétní wiki lze vidět na stránce wiki Special:Version. |
| Toto rozšíření je zahrnuto v následujících wiki farmách/hostitelích a/nebo balíčcích: |
- Stable extensions/cs
- Special page extensions/cs
- Database extensions/cs
- ContentHandler extensions/cs
- ApiMain::moduleManager extensions/cs
- BeforePageDisplay extensions/cs
- CanonicalNamespaces extensions/cs
- CodeEditorGetPageLanguage extensions/cs
- EditFilterMergedContent extensions/cs
- GetPreferences extensions/cs
- MovePageIsValidMove extensions/cs
- GPL licensed extensions/cs
- Extensions in Wikimedia version control/cs
- All extensions/cs
- Extensions used on Wikimedia/cs
- Extensions included in Canasta/cs
- Extensions included in Miraheze/cs
- Analytics extensions/cs
- Statistics extensions/cs
