Developing Dashboards, Views, and Apps for Splunk Web

 


Translate Splunk

Translate Splunk

Splunk supports the internationalization and localization of strings within the product. Use Splunk's localization tools to:

When you log in to Splunk, Splunk uses the language that your browser is set to. If you'd want to switch languages, change your browser settings.

Splunk detects locale strings. A locale string contains two components: a language specifier and a localization specifier. This is usually presented as two lowercase letters and two uppercase letters linked by an underscore. For example, en_US means US English while en_GB means British English.

When looking for a suitable translation, Splunk first tries to find an exact match for the whole locale, but falls back to just the language specifier if the entire setting is not available. For example, translations for fr answer to requests for fr_CA and fr_FR (French, Canada and France respectively). The user's locale also affects the formatting of dates, times, numbers, and other localized settings. Different countries have differing standards on how to format these entities.

Configuration

Splunk uses the gettext internationalization and localization system. When using gettext, you typically use an editor to create, generate, and edit the files used to localize strings in an application. Splunk recommends Poedit, a free, open source editor for localization.

To translate Splunk, follow these directions:

1. Create a directory for the locale. For example, to create the fictional locale mz, create the following directory:

$SPLUNK_HOME/lib/python2.6/site-packages/splunk/appserver/mrsparkle/locale/mz_MZ/LC_MESSAGES/

2. Load the following messages.pot file into your PO editor.

$SPLUNK_HOME/lib/python2.6/site-packages/splunk/appserver/mrsparkle/locale/messages.pot

3. Use the PO editor to translate any strings you want to localize. Save the file as messages.po in the directory you created in step 2. The PO editor also saves a messages.mo file, which is the machine readable version of the PO file.

4. Restart Splunk. There are no other configuration files to edit. Splunk detects the new language files when it restarts.

Localization files

Splunk stores localization information at the following location:

$SPLUNK_HOME/lib/python<version>/site-packages/splunk/appserver/mrsparkle/locale

Translate Apps

You can also use gettext to translate apps. However, most apps must be translated in their own locale subdirectory. Apps that ship with Splunk are automatically extracted and their text included in Splunk's core messages.pot file. There's no need to handle them separately.

To extract the strings from an installed application, ready to be translated in a PO editor, run the following command from Splunk's command line:

splunk extract i18n -app <appname>

This creates a locale/ subdirectory in the app's root directory and populates it with a messages.pot file. Then, follow the steps above to translate the strings within the app. When using views from a different app, the new messages.pot file contains the strings for these views.

Locale-specific resources

Splunk stores static resources such as images, CSS files, and other media as subdirectories at the following location:

$SPLUNK_HOME/share/splunk/search_mrsparkle/exposed/

When serving these resources, Splunk checks to see whether a locale-specific version of the resource is available before falling back to the default resource. For example, if your locale is set to fr_FR, Splunk searches for the logo image file in the following order:

Splunk follows the same path to load HTML templates (including any views) that define each page in the UI. This can be useful for languages that require a modified layout that CSS alone can't accommodate (right to left text for example).

This documentation applies to the following versions of Splunk: 4.3 View the Article History for its revisions.


You must be logged into splunk.com in order to post comments. Log in now.

Was this documentation topic helpful?

If you'd like to hear back from us, please provide your email address:

We'd love to hear what you think about this topic or the documentation as a whole. Feedback you enter here will be delivered to the documentation team.