Extension:ApiFeatureUsage

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manualManual:Extensions
Crystal Clear action run.png
ApiFeatureUsage

Release status:Extension status stable

ImplementationTemplate:Extension#type Special page, API
DescriptionTemplate:Extension#description Access API feature usage log summaries
Author(s)Template:Extension#username Brad Jorsch (Anomietalk)
Latest versionTemplate:Extension#version 1.0 (2016-12-07; 10 months ago (2016-12-07))
Compatibility policyCompatibility#mediawiki_extensions release branches
MediaWikiTemplate:Extension#mediawiki 1.25+
PHPTemplate:Extension#php 5.5.9+
Database changesTemplate:Extension#needs-updatephp No
LicenseTemplate:Extension#license GNU General Public License 2.0 or later
Download
ParametersTemplate:Extension#parameters

$wgApiFeatureUsageQueryEngineConf

Translate the ApiFeatureUsage extension if it is available at translatewiki.net

Check usage and version matrix.

IssuesPhabricator

Open tasks · Report a bug

The ApiFeatureUsage extension adds a special page and an API module to fetch summaries of data logged by ApiBase::logFeatureUsage(), which is typically an indication of use of deprecated API features.

Dependencies[edit]

Log data must be added to some sort of storage system. Currently Elasticsearch is supported via Extension:Elastica.

Installation[edit]

  • Download and place the file(s) in a directory called ApiFeatureUsage in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
    require_once "$IP/extensions/ApiFeatureUsage/ApiFeatureUsage.php";
    
  • YesY Done - Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration[edit]

Parameters
  • $wgApiFeatureUsageQueryEngineConf: Configuration array for accessing the log storage backend.
    class
    Backend access class to instantiate. Either this or factory is required.
    factory
    PHP callable which must return an instance of a backend access class. Either this or class is required.
Elastica backend (ApiFeatureUsageQueryEngineElastica)

Additional configuration values in $wgApiFeatureUsageQueryEngineConf:

serverList
Array of Elasticsearch servers. Required.
maxConnectionAttempts
Maximum connection attempts, default 1.
indexPrefix
Prefix for the indexes to use. Default "apifeatureusage-".
indexFormat
Date formatting for the indexes to use, see the PHP manual. Default "Y.m.d".
type
Elasticsearch type to query. Default "api-feature-usage-sanitized".
featureField
Field name for the logged value of $feature. Default "feature".
timestampField
Field name for the logged timestamp. Default "@timestamp".
agentField
Field name for the logged user agent. Default "agent".

Usage[edit]

The extension adds a new special page, Special:ApiFeatureUsage, with a simple form to request a summary of feature usage logs for a user agent and date range.

The extension also adds an API query submodule, meta=featureusage. See the auto-generated API documentation for details.

See also[edit]