Inhaltsverzeichnis

Icinga2 - Grafana

Icinga ist eine vollständig auf Open-Source-Basis basierende, skalierbare und erweiterbare Monitoring-Lösung welche die Verfügbarkeit von definierten Ressource überprüft und über eine Benachrichtigungssystem verfügt.

Zur Einbindung von Grafana in Icinga, wird ein Modul namens

benötigt.

Beschreibung Externer Link
Download https://github.com/Mikesch-mp/icingaweb2-module-grafana

Grafana ist das Visualisierungswerkzeug, daher benötigt es Datenquellen aus Datenbanksystemen wie Graphite, Prometheus, Elasticsearch, InfluxDB, OpenTSDB, AWS Cloudwatch, MySQL, PostgreSQL.

:!: WICHTIG - Die Datenbasis für Grafana soll in dieser Beschreibung Graphite sein, wie unter nachfolgendem Link beschrieben:

Beschreibung Externer Link
Homepage https://grafana.com/
Dokumentation http://docs.grafana.org/
Plugin-Download https://grafana.com/grafana/plugins/grafana-image-renderer

Ab hier werden zur Ausführung nachfolgender Befehle root-Rechte benötigt. Um der Benutzer root zu werden, melden Sie sich bitte als root-Benutzer am System an, oder wechseln mit nachfolgendem Befehl zum Benutzer root:

$ su -
Password:

Voraussetzungen

Als Voraussetzung für die Installation von Icinga und Grafana in Kombination mit Icinga sind folgende Komponenten erforderlich:

Vorbereitung

Zur Installation von Grafana aus rpm-Paketen, kann ein genutzt bzw. eingebunden werden.

Nachfolgender Befehl erstellt einen neuen Repository-Eintrag im Verzeichnis

mit dem Namen

# touch /etc/yum.repos.d/grafana.repo

Dieser neue Repository-Eintrag muss anschließend mit einem Editor der Wahl mit nachfolgendem Inhalt gefüllt werden:

[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

Anschliessend kann Grafana aus dessen Repository installiert werden.

icingaweb2-module-grafana

Mit nachfolgendem Befehl kann direkt von GitHub eine gepackte Datei als Archiv direkt in das temporäre Verzeichnis /tmp heruntergeladen werden:

# wget -P /tmp https://github.com/Mikesch-mp/icingaweb2-module-grafana/archive/master.zip
--2018-11-13 13:16:45--  https://github.com/Mikesch-mp/icingaweb2-module-grafana/archive/master.zip
Resolving github.com (github.com)... 192.30.253.112, 192.30.253.113
Connecting to github.com (github.com)|192.30.253.112|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/Mikesch-mp/icingaweb2-module-grafana/zip/master [following]
--2018-11-13 13:16:45--  https://codeload.github.com/Mikesch-mp/icingaweb2-module-grafana/zip/master
Resolving codeload.github.com (codeload.github.com)... 192.30.253.121, 192.30.253.120
Connecting to codeload.github.com (codeload.github.com)|192.30.253.121|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘/tmp/master.zip’

    [        <=>                            ] 1,858,277   1.08MB/s   in 1.6s   

2018-11-13 13:16:48 (1.08 MB/s) - ‘/tmp/master.zip’ saved [1858277]

Installation

Nachdem das Drittanbieter-Repository Grafana erfolgreich eingebunden wurde, kann mit nachfolgendem Befehl, das rpm-Paket

falls nicht bereits geschehen, müssen nachfolgende rpm-Pakete ebenfalls noch installiert werden

installiert werden:

# yum install grafana
Loaded plugins: changelog, priorities
343 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package grafana.x86_64 0:5.3.2-1 will be installed
--> Finished Dependency Resolution

Changes in packages about to be updated:


Dependencies Resolved

================================================================================
 Package           Arch             Version             Repository         Size
================================================================================
Installing:
 grafana           x86_64           5.3.2-1             grafana            52 M

Transaction Summary
================================================================================
Install  1 Package

Total download size: 52 M
Installed size: 149 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : grafana-5.3.2-1.x86_64                                       1/1 
### NOT starting on installation, please execute the following statements to configure grafana to start
automatically using systemd
 sudo /bin/systemctl daemon-reload
 sudo /bin/systemctl enable grafana-server.service
### You can start grafana-server by executing
 sudo /bin/systemctl start grafana-server.service
POSTTRANS: Running script
  Verifying  : grafana-5.3.2-1.x86_64                                       1/1 

Installed:
  grafana.x86_64 0:5.3.2-1                                                      

Complete!

grafana

Mit nachfolgendem Befehl kann überprüft werden, welche Inhalte mit den Paket grafana installiert wurden.

# rpm -qil grafana
Name        : grafana
Version     : 5.3.2
Release     : 1
Architecture: x86_64
Install Date: Tue 13 Nov 2018 01:03:15 PM CET
Group       : default
Size        : 156153401
License     : "Apache 2.0"
Signature   : RSA/SHA1, Wed 24 Oct 2018 02:19:00 PM CEST, Key ID 8c8c34c524098cb6
Source RPM  : grafana-5.3.2-1.src.rpm
Build Date  : Wed 24 Oct 2018 02:17:31 PM CEST
Build Host  : b678f59b192d
Relocations : / 
Packager    : contact@grafana.com
Vendor      : Grafana
URL         : https://grafana.com
Summary     : Grafana
Description :
Grafana
/etc/grafana
/etc/init.d/grafana-server
/etc/sysconfig/grafana-server
/usr/lib/systemd/system/grafana-server.service
/usr/sbin/grafana-cli
/usr/sbin/grafana-server
/usr/share/grafana/VERSION
/usr/share/grafana/conf/defaults.ini
/usr/share/grafana/conf/ldap.toml
/usr/share/grafana/conf/provisioning/dashboards/sample.yaml
/usr/share/grafana/conf/provisioning/datasources/sample.yaml
/usr/share/grafana/conf/sample.ini
/usr/share/grafana/public/app/app.ts
/usr/share/grafana/public/app/core/actions/index.ts
/usr/share/grafana/public/app/core/actions/location.ts
/usr/share/grafana/public/app/core/actions/navModel.ts
/usr/share/grafana/public/app/core/angular_wrappers.ts
/usr/share/grafana/public/app/core/app_events.ts
/usr/share/grafana/public/app/core/components/Animations/SlideDown.tsx
/usr/share/grafana/public/app/core/components/CustomScrollbar/CustomScrollbar.test.tsx
/usr/share/grafana/public/app/core/components/CustomScrollbar/CustomScrollbar.tsx
/usr/share/grafana/public/app/core/components/CustomScrollbar/__snapshots__/CustomScrollbar.test.tsx.snap
/usr/share/grafana/public/app/core/components/DeleteButton/DeleteButton.test.tsx
/usr/share/grafana/public/app/core/components/DeleteButton/DeleteButton.tsx
/usr/share/grafana/public/app/core/components/EmptyListCTA/EmptyListCTA.test.tsx
/usr/share/grafana/public/app/core/components/EmptyListCTA/EmptyListCTA.tsx
/usr/share/grafana/public/app/core/components/EmptyListCTA/__snapshots__/EmptyListCTA.test.tsx.snap
/usr/share/grafana/public/app/core/components/Forms/Forms.tsx
/usr/share/grafana/public/app/core/components/LayoutSelector/LayoutSelector.tsx
/usr/share/grafana/public/app/core/components/PageHeader/PageHeader.test.tsx
/usr/share/grafana/public/app/core/components/PageHeader/PageHeader.tsx
/usr/share/grafana/public/app/core/components/PasswordStrength.tsx
/usr/share/grafana/public/app/core/components/PermissionList/AddPermission.tsx
/usr/share/grafana/public/app/core/components/PermissionList/DisabledPermissionListItem.tsx
/usr/share/grafana/public/app/core/components/PermissionList/PermissionList.tsx
/usr/share/grafana/public/app/core/components/PermissionList/PermissionListItem.tsx
/usr/share/grafana/public/app/core/components/PermissionList/PermissionsInfo.tsx
/usr/share/grafana/public/app/core/components/Picker/DescriptionOption.tsx
/usr/share/grafana/public/app/core/components/Picker/DescriptionPicker.tsx
/usr/share/grafana/public/app/core/components/Picker/PickerOption.test.tsx
/usr/share/grafana/public/app/core/components/Picker/PickerOption.tsx
/usr/share/grafana/public/app/core/components/Picker/TeamPicker.test.tsx
/usr/share/grafana/public/app/core/components/Picker/TeamPicker.tsx
/usr/share/grafana/public/app/core/components/Picker/UserPicker.test.tsx
/usr/share/grafana/public/app/core/components/Picker/UserPicker.tsx
/usr/share/grafana/public/app/core/components/Picker/__snapshots__/PickerOption.test.tsx.snap
/usr/share/grafana/public/app/core/components/Picker/__snapshots__/TeamPicker.test.tsx.snap
/usr/share/grafana/public/app/core/components/Picker/__snapshots__/UserPicker.test.tsx.snap
/usr/share/grafana/public/app/core/components/ScrollBar/ScrollBar.tsx
/usr/share/grafana/public/app/core/components/TagFilter/TagBadge.tsx
/usr/share/grafana/public/app/core/components/TagFilter/TagFilter.tsx
/usr/share/grafana/public/app/core/components/TagFilter/TagOption.tsx
/usr/share/grafana/public/app/core/components/TagFilter/TagValue.tsx
/usr/share/grafana/public/app/core/components/Tooltip/Popover.test.tsx
/usr/share/grafana/public/app/core/components/Tooltip/Popover.tsx
/usr/share/grafana/public/app/core/components/Tooltip/Tooltip.test.tsx
/usr/share/grafana/public/app/core/components/Tooltip/Tooltip.tsx
/usr/share/grafana/public/app/core/components/Tooltip/__snapshots__/Popover.test.tsx.snap
/usr/share/grafana/public/app/core/components/Tooltip/__snapshots__/Tooltip.test.tsx.snap
/usr/share/grafana/public/app/core/components/Tooltip/withTooltip.tsx
/usr/share/grafana/public/app/core/components/code_editor/code_editor.ts
/usr/share/grafana/public/app/core/components/code_editor/theme-grafana-dark.js
/usr/share/grafana/public/app/core/components/colorpicker/ColorPalette.tsx
/usr/share/grafana/public/app/core/components/colorpicker/ColorPicker.tsx
/usr/share/grafana/public/app/core/components/colorpicker/ColorPickerPopover.tsx
/usr/share/grafana/public/app/core/components/colorpicker/SeriesColorPicker.tsx
/usr/share/grafana/public/app/core/components/colorpicker/SpectrumPicker.tsx
/usr/share/grafana/public/app/core/components/colorpicker/spectrum_picker.ts
/usr/share/grafana/public/app/core/components/dashboard_selector.ts
/usr/share/grafana/public/app/core/components/form_dropdown/form_dropdown.ts
/usr/share/grafana/public/app/core/components/gf_page.ts
/usr/share/grafana/public/app/core/components/grafana_app.ts
/usr/share/grafana/public/app/core/components/help/help.html
/usr/share/grafana/public/app/core/components/help/help.ts
/usr/share/grafana/public/app/core/components/info_popover.ts
/usr/share/grafana/public/app/core/components/json_explorer/helpers.ts
/usr/share/grafana/public/app/core/components/json_explorer/json_explorer.ts
/usr/share/grafana/public/app/core/components/jsontree/jsontree.ts
/usr/share/grafana/public/app/core/components/layout_selector/layout_selector.ts
/usr/share/grafana/public/app/core/components/manage_dashboards/manage_dashboards.html
/usr/share/grafana/public/app/core/components/manage_dashboards/manage_dashboards.ts
/usr/share/grafana/public/app/core/components/navbar/navbar.html
/usr/share/grafana/public/app/core/components/navbar/navbar.ts
/usr/share/grafana/public/app/core/components/org_switcher.ts
/usr/share/grafana/public/app/core/components/query_part/query_part.ts
/usr/share/grafana/public/app/core/components/query_part/query_part_editor.ts
/usr/share/grafana/public/app/core/components/scroll/page_scroll.ts
/usr/share/grafana/public/app/core/components/scroll/scroll.ts
/usr/share/grafana/public/app/core/components/search/SearchResult.tsx
/usr/share/grafana/public/app/core/components/search/search.html
/usr/share/grafana/public/app/core/components/search/search.ts
/usr/share/grafana/public/app/core/components/search/search_results.html
/usr/share/grafana/public/app/core/components/search/search_results.ts
/usr/share/grafana/public/app/core/components/sidemenu/BottomNavLinks.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/BottomNavLinks.tsx
/usr/share/grafana/public/app/core/components/sidemenu/BottomSection.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/BottomSection.tsx
/usr/share/grafana/public/app/core/components/sidemenu/DropDownChild.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/DropDownChild.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SideMenu.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SideMenu.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SideMenuDropDown.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SideMenuDropDown.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SignIn.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/SignIn.tsx
/usr/share/grafana/public/app/core/components/sidemenu/TopSection.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/TopSection.tsx
/usr/share/grafana/public/app/core/components/sidemenu/TopSectionItem.test.tsx
/usr/share/grafana/public/app/core/components/sidemenu/TopSectionItem.tsx
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/BottomNavLinks.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/BottomSection.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/DropDownChild.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/SideMenu.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/SideMenuDropDown.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/SignIn.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/TopSection.test.tsx.snap
/usr/share/grafana/public/app/core/components/sidemenu/__snapshots__/TopSectionItem.test.tsx.snap
/usr/share/grafana/public/app/core/components/sql_part/sql_part.ts
/usr/share/grafana/public/app/core/components/sql_part/sql_part_editor.ts
/usr/share/grafana/public/app/core/components/switch.ts
/usr/share/grafana/public/app/core/config.ts
/usr/share/grafana/public/app/core/constants.ts
/usr/share/grafana/public/app/core/controllers/all.ts
/usr/share/grafana/public/app/core/controllers/error_ctrl.ts
/usr/share/grafana/public/app/core/controllers/inspect_ctrl.ts
/usr/share/grafana/public/app/core/controllers/invited_ctrl.ts
/usr/share/grafana/public/app/core/controllers/json_editor_ctrl.ts
/usr/share/grafana/public/app/core/controllers/login_ctrl.ts
/usr/share/grafana/public/app/core/controllers/reset_password_ctrl.ts
/usr/share/grafana/public/app/core/controllers/signup_ctrl.ts
/usr/share/grafana/public/app/core/core.ts
/usr/share/grafana/public/app/core/core_module.ts
/usr/share/grafana/public/app/core/directives/array_join.ts
/usr/share/grafana/public/app/core/directives/dash_class.ts
/usr/share/grafana/public/app/core/directives/diff-view.ts
/usr/share/grafana/public/app/core/directives/dropdown_typeahead.ts
/usr/share/grafana/public/app/core/directives/give_focus.ts
/usr/share/grafana/public/app/core/directives/metric_segment.ts
/usr/share/grafana/public/app/core/directives/misc.ts
/usr/share/grafana/public/app/core/directives/ng_model_on_blur.ts
/usr/share/grafana/public/app/core/directives/rebuild_on_change.ts
/usr/share/grafana/public/app/core/directives/tags.ts
/usr/share/grafana/public/app/core/directives/value_select_dropdown.ts
/usr/share/grafana/public/app/core/filters/filters.ts
/usr/share/grafana/public/app/core/jquery_extended.ts
/usr/share/grafana/public/app/core/live/live_srv.ts
/usr/share/grafana/public/app/core/lodash_extended.ts
/usr/share/grafana/public/app/core/logs_model.ts
/usr/share/grafana/public/app/core/mod_defs.d.ts
/usr/share/grafana/public/app/core/nav_model_srv.ts
/usr/share/grafana/public/app/core/partials.ts
/usr/share/grafana/public/app/core/profiler.ts
/usr/share/grafana/public/app/core/reducers/index.ts
/usr/share/grafana/public/app/core/reducers/location.ts
/usr/share/grafana/public/app/core/reducers/navModel.ts
/usr/share/grafana/public/app/core/reducers/processsAclItems.ts
/usr/share/grafana/public/app/core/selectors/location.ts
/usr/share/grafana/public/app/core/selectors/navModel.ts
/usr/share/grafana/public/app/core/services/alert_srv.ts
/usr/share/grafana/public/app/core/services/all.ts
/usr/share/grafana/public/app/core/services/analytics.ts
/usr/share/grafana/public/app/core/services/backend_srv.ts
/usr/share/grafana/public/app/core/services/bridge_srv.ts
/usr/share/grafana/public/app/core/services/context_srv.ts
/usr/share/grafana/public/app/core/services/dynamic_directive_srv.ts
/usr/share/grafana/public/app/core/services/impression_srv.ts
/usr/share/grafana/public/app/core/services/keybindingSrv.ts
/usr/share/grafana/public/app/core/services/ng_react.ts
/usr/share/grafana/public/app/core/services/popover_srv.ts
/usr/share/grafana/public/app/core/services/search_srv.ts
/usr/share/grafana/public/app/core/services/segment_srv.ts
/usr/share/grafana/public/app/core/services/timer.ts
/usr/share/grafana/public/app/core/services/util_srv.ts
/usr/share/grafana/public/app/core/specs/ColorPalette.test.tsx
/usr/share/grafana/public/app/core/specs/PasswordStrength.test.tsx
/usr/share/grafana/public/app/core/specs/__snapshots__/ColorPalette.test.tsx.snap
/usr/share/grafana/public/app/core/specs/backend_srv.test.ts
/usr/share/grafana/public/app/core/specs/datemath.test.ts
/usr/share/grafana/public/app/core/specs/emitter.test.ts
/usr/share/grafana/public/app/core/specs/file_export.test.ts
/usr/share/grafana/public/app/core/specs/flatten.test.ts
/usr/share/grafana/public/app/core/specs/kbn.test.ts
/usr/share/grafana/public/app/core/specs/location_util.test.ts
/usr/share/grafana/public/app/core/specs/manage_dashboards.test.ts
/usr/share/grafana/public/app/core/specs/org_switcher.test.ts
/usr/share/grafana/public/app/core/specs/rangeutil.test.ts
/usr/share/grafana/public/app/core/specs/search.test.ts
/usr/share/grafana/public/app/core/specs/search_results.test.ts
/usr/share/grafana/public/app/core/specs/search_srv.test.ts
/usr/share/grafana/public/app/core/specs/store.test.ts
/usr/share/grafana/public/app/core/specs/table_model.test.ts
/usr/share/grafana/public/app/core/specs/ticks.test.ts
/usr/share/grafana/public/app/core/specs/time_series.test.ts
/usr/share/grafana/public/app/core/specs/url.test.ts
/usr/share/grafana/public/app/core/specs/value_select_dropdown.test.ts
/usr/share/grafana/public/app/core/store.ts
/usr/share/grafana/public/app/core/table_model.ts
/usr/share/grafana/public/app/core/time_series2.ts
/usr/share/grafana/public/app/core/utils/acl.ts
/usr/share/grafana/public/app/core/utils/colors.ts
/usr/share/grafana/public/app/core/utils/css_loader.ts
/usr/share/grafana/public/app/core/utils/dag.test.ts
/usr/share/grafana/public/app/core/utils/dag.ts
/usr/share/grafana/public/app/core/utils/datemath.ts
/usr/share/grafana/public/app/core/utils/emitter.ts
/usr/share/grafana/public/app/core/utils/explore.test.ts
/usr/share/grafana/public/app/core/utils/explore.ts
/usr/share/grafana/public/app/core/utils/file_export.ts
/usr/share/grafana/public/app/core/utils/flatten.ts
/usr/share/grafana/public/app/core/utils/kbn.ts
/usr/share/grafana/public/app/core/utils/location_util.ts
/usr/share/grafana/public/app/core/utils/model_utils.ts
/usr/share/grafana/public/app/core/utils/outline.ts
/usr/share/grafana/public/app/core/utils/rangeutil.ts
/usr/share/grafana/public/app/core/utils/react2angular.ts
/usr/share/grafana/public/app/core/utils/sort_by_keys.ts
/usr/share/grafana/public/app/core/utils/tags.ts
/usr/share/grafana/public/app/core/utils/ticks.ts
/usr/share/grafana/public/app/core/utils/url.ts
/usr/share/grafana/public/app/core/utils/version.ts
/usr/share/grafana/public/app/dev.ts
/usr/share/grafana/public/app/features/admin/AdminEditOrgCtrl.ts
/usr/share/grafana/public/app/features/admin/AdminEditUserCtrl.ts
/usr/share/grafana/public/app/features/admin/AdminListOrgsCtrl.ts
/usr/share/grafana/public/app/features/admin/AdminListUsersCtrl.ts
/usr/share/grafana/public/app/features/admin/ServerStats.test.tsx
/usr/share/grafana/public/app/features/admin/ServerStats.tsx
/usr/share/grafana/public/app/features/admin/StyleGuideCtrl.ts
/usr/share/grafana/public/app/features/admin/__snapshots__/ServerStats.test.tsx.snap
/usr/share/grafana/public/app/features/admin/index.ts
/usr/share/grafana/public/app/features/admin/partials/admin_home.html
/usr/share/grafana/public/app/features/admin/partials/edit_org.html
/usr/share/grafana/public/app/features/admin/partials/edit_user.html
/usr/share/grafana/public/app/features/admin/partials/new_user.html
/usr/share/grafana/public/app/features/admin/partials/orgs.html
/usr/share/grafana/public/app/features/admin/partials/settings.html
/usr/share/grafana/public/app/features/admin/partials/stats.html
/usr/share/grafana/public/app/features/admin/partials/styleguide.html
/usr/share/grafana/public/app/features/admin/partials/users.html
/usr/share/grafana/public/app/features/admin/state/apis.ts
/usr/share/grafana/public/app/features/alerting/AlertRuleItem.test.tsx
/usr/share/grafana/public/app/features/alerting/AlertRuleItem.tsx
/usr/share/grafana/public/app/features/alerting/AlertRuleList.test.tsx
/usr/share/grafana/public/app/features/alerting/AlertRuleList.tsx
/usr/share/grafana/public/app/features/alerting/AlertTabCtrl.ts
/usr/share/grafana/public/app/features/alerting/NotificationsEditCtrl.ts
/usr/share/grafana/public/app/features/alerting/NotificationsListCtrl.ts
/usr/share/grafana/public/app/features/alerting/__snapshots__/AlertRuleItem.test.tsx.snap
/usr/share/grafana/public/app/features/alerting/__snapshots__/AlertRuleList.test.tsx.snap
/usr/share/grafana/public/app/features/alerting/partials/alert_howto.html
/usr/share/grafana/public/app/features/alerting/partials/alert_tab.html
/usr/share/grafana/public/app/features/alerting/partials/notification_edit.html
/usr/share/grafana/public/app/features/alerting/partials/notifications_list.html
/usr/share/grafana/public/app/features/alerting/state/ThresholdMapper.test.ts
/usr/share/grafana/public/app/features/alerting/state/ThresholdMapper.ts
/usr/share/grafana/public/app/features/alerting/state/actions.ts
/usr/share/grafana/public/app/features/alerting/state/alertDef.ts
/usr/share/grafana/public/app/features/alerting/state/reducers.test.ts
/usr/share/grafana/public/app/features/alerting/state/reducers.ts
/usr/share/grafana/public/app/features/alerting/state/selectors.test.ts
/usr/share/grafana/public/app/features/alerting/state/selectors.ts
/usr/share/grafana/public/app/features/all.ts
/usr/share/grafana/public/app/features/annotations/all.ts
/usr/share/grafana/public/app/features/annotations/annotation_tooltip.ts
/usr/share/grafana/public/app/features/annotations/annotations_srv.ts
/usr/share/grafana/public/app/features/annotations/editor_ctrl.ts
/usr/share/grafana/public/app/features/annotations/event.ts
/usr/share/grafana/public/app/features/annotations/event_editor.ts
/usr/share/grafana/public/app/features/annotations/event_manager.ts
/usr/share/grafana/public/app/features/annotations/events_processing.ts
/usr/share/grafana/public/app/features/annotations/partials/editor.html
/usr/share/grafana/public/app/features/annotations/partials/event_editor.html
/usr/share/grafana/public/app/features/annotations/specs/annotations_srv.test.ts
/usr/share/grafana/public/app/features/annotations/specs/annotations_srv_specs.test.ts
/usr/share/grafana/public/app/features/api-keys/ApiKeysAddedModal.test.tsx
/usr/share/grafana/public/app/features/api-keys/ApiKeysAddedModal.tsx
/usr/share/grafana/public/app/features/api-keys/ApiKeysPage.test.tsx
/usr/share/grafana/public/app/features/api-keys/ApiKeysPage.tsx
/usr/share/grafana/public/app/features/api-keys/__mocks__/apiKeysMock.ts
/usr/share/grafana/public/app/features/api-keys/__snapshots__/ApiKeysAddedModal.test.tsx.snap
/usr/share/grafana/public/app/features/api-keys/__snapshots__/ApiKeysPage.test.tsx.snap
/usr/share/grafana/public/app/features/api-keys/state/actions.ts
/usr/share/grafana/public/app/features/api-keys/state/reducers.test.ts
/usr/share/grafana/public/app/features/api-keys/state/reducers.ts
/usr/share/grafana/public/app/features/api-keys/state/selectors.test.ts
/usr/share/grafana/public/app/features/api-keys/state/selectors.ts
/usr/share/grafana/public/app/features/dashboard/ad_hoc_filters.ts
/usr/share/grafana/public/app/features/dashboard/alerting_srv.ts
/usr/share/grafana/public/app/features/dashboard/all.ts
/usr/share/grafana/public/app/features/dashboard/change_tracker.ts
/usr/share/grafana/public/app/features/dashboard/create_folder_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_import_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_loader_srv.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_migration.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_model.ts
/usr/share/grafana/public/app/features/dashboard/dashboard_srv.ts
/usr/share/grafana/public/app/features/dashboard/dashgrid/AddPanelPanel.tsx
/usr/share/grafana/public/app/features/dashboard/dashgrid/DashboardGrid.tsx
/usr/share/grafana/public/app/features/dashboard/dashgrid/DashboardGridDirective.ts
/usr/share/grafana/public/app/features/dashboard/dashgrid/DashboardPanel.tsx
/usr/share/grafana/public/app/features/dashboard/dashgrid/DashboardRow.tsx
/usr/share/grafana/public/app/features/dashboard/dashgrid/PanelContainer.ts
/usr/share/grafana/public/app/features/dashboard/dashgrid/PanelLoader.ts
/usr/share/grafana/public/app/features/dashboard/dashgrid/RowOptions.ts
/usr/share/grafana/public/app/features/dashboard/dashlinks/editor.html
/usr/share/grafana/public/app/features/dashboard/dashlinks/editor.ts
/usr/share/grafana/public/app/features/dashboard/dashlinks/module.ts
/usr/share/grafana/public/app/features/dashboard/dashnav/dashnav.html
/usr/share/grafana/public/app/features/dashboard/dashnav/dashnav.ts
/usr/share/grafana/public/app/features/dashboard/export/export_modal.html
/usr/share/grafana/public/app/features/dashboard/export/export_modal.ts
/usr/share/grafana/public/app/features/dashboard/export/exporter.ts
/usr/share/grafana/public/app/features/dashboard/export_data/export_data_modal.html
/usr/share/grafana/public/app/features/dashboard/export_data/export_data_modal.ts
/usr/share/grafana/public/app/features/dashboard/folder_dashboards_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/folder_page_loader.ts
/usr/share/grafana/public/app/features/dashboard/folder_permissions_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/folder_picker/folder_picker.html
/usr/share/grafana/public/app/features/dashboard/folder_picker/folder_picker.ts
/usr/share/grafana/public/app/features/dashboard/history/history.html
/usr/share/grafana/public/app/features/dashboard/history/history.ts
/usr/share/grafana/public/app/features/dashboard/history/history_srv.ts
/usr/share/grafana/public/app/features/dashboard/move_to_folder_modal/move_to_folder.html
/usr/share/grafana/public/app/features/dashboard/move_to_folder_modal/move_to_folder.ts
/usr/share/grafana/public/app/features/dashboard/panel_model.ts
/usr/share/grafana/public/app/features/dashboard/panellinks/link_srv.ts
/usr/share/grafana/public/app/features/dashboard/panellinks/module.html
/usr/share/grafana/public/app/features/dashboard/panellinks/module.ts
/usr/share/grafana/public/app/features/dashboard/panellinks/specs/link_srv.test.ts
/usr/share/grafana/public/app/features/dashboard/partials/create_folder.html
/usr/share/grafana/public/app/features/dashboard/partials/dashboard_import.html
/usr/share/grafana/public/app/features/dashboard/partials/folder_dashboards.html
/usr/share/grafana/public/app/features/dashboard/partials/folder_permissions.html
/usr/share/grafana/public/app/features/dashboard/partials/folder_settings.html
/usr/share/grafana/public/app/features/dashboard/partials/inspector.html
/usr/share/grafana/public/app/features/dashboard/partials/row_options.html
/usr/share/grafana/public/app/features/dashboard/partials/shareModal.html
/usr/share/grafana/public/app/features/dashboard/permissions/DashboardPermissions.tsx
/usr/share/grafana/public/app/features/dashboard/repeat_option/repeat_option.ts
/usr/share/grafana/public/app/features/dashboard/save_as_modal.ts
/usr/share/grafana/public/app/features/dashboard/save_modal.ts
/usr/share/grafana/public/app/features/dashboard/save_provisioned_modal.ts
/usr/share/grafana/public/app/features/dashboard/settings/settings.html
/usr/share/grafana/public/app/features/dashboard/settings/settings.ts
/usr/share/grafana/public/app/features/dashboard/shareModalCtrl.ts
/usr/share/grafana/public/app/features/dashboard/share_snapshot_ctrl.ts
/usr/share/grafana/public/app/features/dashboard/specs/AddPanelPanel.test.tsx
/usr/share/grafana/public/app/features/dashboard/specs/DashboardRow.test.tsx
/usr/share/grafana/public/app/features/dashboard/specs/change_tracker.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/dashboard_import_ctrl.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/dashboard_migration.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/dashboard_model.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/exporter.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/history_ctrl.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/history_mocks.ts
/usr/share/grafana/public/app/features/dashboard/specs/history_srv.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/repeat.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/save_as_modal.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/save_modal.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/save_provisioned_modal.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/share_modal_ctrl.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/time_srv.test.ts
/usr/share/grafana/public/app/features/dashboard/specs/viewstate_srv.test.ts
/usr/share/grafana/public/app/features/dashboard/state/actions.ts
/usr/share/grafana/public/app/features/dashboard/state/reducers.test.ts
/usr/share/grafana/public/app/features/dashboard/state/reducers.ts
/usr/share/grafana/public/app/features/dashboard/submenu/submenu.html
/usr/share/grafana/public/app/features/dashboard/submenu/submenu.ts
/usr/share/grafana/public/app/features/dashboard/time_srv.ts
/usr/share/grafana/public/app/features/dashboard/timepicker/input_date.ts
/usr/share/grafana/public/app/features/dashboard/timepicker/settings.html
/usr/share/grafana/public/app/features/dashboard/timepicker/timepicker.html
/usr/share/grafana/public/app/features/dashboard/timepicker/timepicker.ts
/usr/share/grafana/public/app/features/dashboard/unsaved_changes_modal.ts
/usr/share/grafana/public/app/features/dashboard/unsaved_changes_srv.ts
/usr/share/grafana/public/app/features/dashboard/upload.ts
/usr/share/grafana/public/app/features/dashboard/validation_srv.ts
/usr/share/grafana/public/app/features/dashboard/view_state_srv.ts
/usr/share/grafana/public/app/features/datasources/DataSourceList.test.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesActionBar.test.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesActionBar.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesList.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesListItem.test.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesListItem.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesListPage.test.tsx
/usr/share/grafana/public/app/features/datasources/DataSourcesListPage.tsx
/usr/share/grafana/public/app/features/datasources/__mocks__/dataSourcesMocks.ts
/usr/share/grafana/public/app/features/datasources/__snapshots__/DataSourceList.test.tsx.snap
/usr/share/grafana/public/app/features/datasources/__snapshots__/DataSourcesActionBar.test.tsx.snap
/usr/share/grafana/public/app/features/datasources/__snapshots__/DataSourcesListItem.test.tsx.snap
/usr/share/grafana/public/app/features/datasources/__snapshots__/DataSourcesListPage.test.tsx.snap
/usr/share/grafana/public/app/features/datasources/state/actions.ts
/usr/share/grafana/public/app/features/datasources/state/reducers.ts
/usr/share/grafana/public/app/features/datasources/state/selectors.ts
/usr/share/grafana/public/app/features/explore/ElapsedTime.tsx
/usr/share/grafana/public/app/features/explore/Explore.tsx
/usr/share/grafana/public/app/features/explore/Graph.test.tsx
/usr/share/grafana/public/app/features/explore/Graph.tsx
/usr/share/grafana/public/app/features/explore/JSONViewer.tsx
/usr/share/grafana/public/app/features/explore/Legend.tsx
/usr/share/grafana/public/app/features/explore/Logs.tsx
/usr/share/grafana/public/app/features/explore/PromQueryField.test.tsx
/usr/share/grafana/public/app/features/explore/PromQueryField.tsx
/usr/share/grafana/public/app/features/explore/QueryField.tsx
/usr/share/grafana/public/app/features/explore/QueryRows.tsx
/usr/share/grafana/public/app/features/explore/Table.tsx
/usr/share/grafana/public/app/features/explore/TimePicker.test.tsx
/usr/share/grafana/public/app/features/explore/TimePicker.tsx
/usr/share/grafana/public/app/features/explore/Typeahead.tsx
/usr/share/grafana/public/app/features/explore/Value.ts
/usr/share/grafana/public/app/features/explore/Wrapper.tsx
/usr/share/grafana/public/app/features/explore/__mocks__/mockData.ts
/usr/share/grafana/public/app/features/explore/__snapshots__/Graph.test.tsx.snap
/usr/share/grafana/public/app/features/explore/slate-plugins/braces.test.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/braces.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/clear.test.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/clear.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/newline.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/prism/promql.ts
/usr/share/grafana/public/app/features/explore/slate-plugins/runner.ts
/usr/share/grafana/public/app/features/explore/utils/debounce.ts
/usr/share/grafana/public/app/features/explore/utils/dom.ts
/usr/share/grafana/public/app/features/explore/utils/prometheus.test.ts
/usr/share/grafana/public/app/features/explore/utils/prometheus.ts
/usr/share/grafana/public/app/features/explore/utils/query.ts
/usr/share/grafana/public/app/features/folders/FolderPermissions.tsx
/usr/share/grafana/public/app/features/folders/FolderSettingsPage.test.tsx
/usr/share/grafana/public/app/features/folders/FolderSettingsPage.tsx
/usr/share/grafana/public/app/features/folders/__snapshots__/FolderSettingsPage.test.tsx.snap
/usr/share/grafana/public/app/features/folders/state/actions.ts
/usr/share/grafana/public/app/features/folders/state/navModel.ts
/usr/share/grafana/public/app/features/folders/state/reducers.test.ts
/usr/share/grafana/public/app/features/folders/state/reducers.ts
/usr/share/grafana/public/app/features/manage-dashboards/DashboardListCtrl.ts
/usr/share/grafana/public/app/features/manage-dashboards/SnapshotListCtrl.ts
/usr/share/grafana/public/app/features/manage-dashboards/index.ts
/usr/share/grafana/public/app/features/manage-dashboards/partials/dashboard_list.html
/usr/share/grafana/public/app/features/manage-dashboards/partials/snapshot_list.html
/usr/share/grafana/public/app/features/org/all.ts
/usr/share/grafana/public/app/features/org/change_password_ctrl.ts
/usr/share/grafana/public/app/features/org/create_team_ctrl.ts
/usr/share/grafana/public/app/features/org/new_org_ctrl.ts
/usr/share/grafana/public/app/features/org/org_details_ctrl.ts
/usr/share/grafana/public/app/features/org/org_users_ctrl.ts
/usr/share/grafana/public/app/features/org/partials/change_password.html
/usr/share/grafana/public/app/features/org/partials/create_team.html
/usr/share/grafana/public/app/features/org/partials/invite.html
/usr/share/grafana/public/app/features/org/partials/newOrg.html
/usr/share/grafana/public/app/features/org/partials/orgDetails.html
/usr/share/grafana/public/app/features/org/partials/orgUsers.html
/usr/share/grafana/public/app/features/org/partials/profile.html
/usr/share/grafana/public/app/features/org/partials/select_org.html
/usr/share/grafana/public/app/features/org/prefs_control.ts
/usr/share/grafana/public/app/features/org/profile_ctrl.ts
/usr/share/grafana/public/app/features/org/select_org_ctrl.ts
/usr/share/grafana/public/app/features/org/user_invite_ctrl.ts
/usr/share/grafana/public/app/features/panel/all.ts
/usr/share/grafana/public/app/features/panel/metrics_panel_ctrl.ts
/usr/share/grafana/public/app/features/panel/metrics_tab.ts
/usr/share/grafana/public/app/features/panel/panel_ctrl.ts
/usr/share/grafana/public/app/features/panel/panel_directive.ts
/usr/share/grafana/public/app/features/panel/panel_editor_tab.ts
/usr/share/grafana/public/app/features/panel/panel_header.ts
/usr/share/grafana/public/app/features/panel/partials/metrics_tab.html
/usr/share/grafana/public/app/features/panel/partials/panelTime.html
/usr/share/grafana/public/app/features/panel/partials/query_editor_row.html
/usr/share/grafana/public/app/features/panel/partials/soloPanel.html
/usr/share/grafana/public/app/features/panel/query_ctrl.ts
/usr/share/grafana/public/app/features/panel/query_editor_row.ts
/usr/share/grafana/public/app/features/panel/query_troubleshooter.ts
/usr/share/grafana/public/app/features/panel/solo_panel_ctrl.ts
/usr/share/grafana/public/app/features/panel/specs/metrics_panel_ctrl.test.ts
/usr/share/grafana/public/app/features/playlist/all.ts
/usr/share/grafana/public/app/features/playlist/partials/playlist.html
/usr/share/grafana/public/app/features/playlist/partials/playlist_search.html
/usr/share/grafana/public/app/features/playlist/partials/playlists.html
/usr/share/grafana/public/app/features/playlist/playlist_edit_ctrl.ts
/usr/share/grafana/public/app/features/playlist/playlist_routes.ts
/usr/share/grafana/public/app/features/playlist/playlist_search.ts
/usr/share/grafana/public/app/features/playlist/playlist_srv.ts
/usr/share/grafana/public/app/features/playlist/playlists_ctrl.ts
/usr/share/grafana/public/app/features/playlist/specs/playlist_edit_ctrl.test.ts
/usr/share/grafana/public/app/features/plugins/PluginActionBar.test.tsx
/usr/share/grafana/public/app/features/plugins/PluginActionBar.tsx
/usr/share/grafana/public/app/features/plugins/PluginList.test.tsx
/usr/share/grafana/public/app/features/plugins/PluginList.tsx
/usr/share/grafana/public/app/features/plugins/PluginListItem.test.tsx
/usr/share/grafana/public/app/features/plugins/PluginListItem.tsx
/usr/share/grafana/public/app/features/plugins/PluginListPage.test.tsx
/usr/share/grafana/public/app/features/plugins/PluginListPage.tsx
/usr/share/grafana/public/app/features/plugins/__mocks__/pluginMocks.ts
/usr/share/grafana/public/app/features/plugins/__snapshots__/PluginActionBar.test.tsx.snap
/usr/share/grafana/public/app/features/plugins/__snapshots__/PluginList.test.tsx.snap
/usr/share/grafana/public/app/features/plugins/__snapshots__/PluginListItem.test.tsx.snap
/usr/share/grafana/public/app/features/plugins/__snapshots__/PluginListPage.test.tsx.snap
/usr/share/grafana/public/app/features/plugins/all.ts
/usr/share/grafana/public/app/features/plugins/built_in_plugins.ts
/usr/share/grafana/public/app/features/plugins/datasource_srv.ts
/usr/share/grafana/public/app/features/plugins/ds_dashboards_ctrl.ts
/usr/share/grafana/public/app/features/plugins/ds_edit_ctrl.ts
/usr/share/grafana/public/app/features/plugins/import_list/import_list.html
/usr/share/grafana/public/app/features/plugins/import_list/import_list.ts
/usr/share/grafana/public/app/features/plugins/partials/ds_dashboards.html
/usr/share/grafana/public/app/features/plugins/partials/ds_edit.html
/usr/share/grafana/public/app/features/plugins/partials/ds_http_settings.html
/usr/share/grafana/public/app/features/plugins/partials/plugin_edit.html
/usr/share/grafana/public/app/features/plugins/partials/plugin_page.html
/usr/share/grafana/public/app/features/plugins/partials/update_instructions.html
/usr/share/grafana/public/app/features/plugins/plugin_component.ts
/usr/share/grafana/public/app/features/plugins/plugin_edit_ctrl.ts
/usr/share/grafana/public/app/features/plugins/plugin_loader.ts
/usr/share/grafana/public/app/features/plugins/plugin_page_ctrl.ts
/usr/share/grafana/public/app/features/plugins/specs/datasource_srv.test.ts
/usr/share/grafana/public/app/features/plugins/state/actions.ts
/usr/share/grafana/public/app/features/plugins/state/navModel.ts
/usr/share/grafana/public/app/features/plugins/state/reducers.ts
/usr/share/grafana/public/app/features/plugins/state/selectors.test.ts
/usr/share/grafana/public/app/features/plugins/state/selectors.ts
/usr/share/grafana/public/app/features/teams/TeamGroupSync.test.tsx
/usr/share/grafana/public/app/features/teams/TeamGroupSync.tsx
/usr/share/grafana/public/app/features/teams/TeamList.test.tsx
/usr/share/grafana/public/app/features/teams/TeamList.tsx
/usr/share/grafana/public/app/features/teams/TeamMembers.test.tsx
/usr/share/grafana/public/app/features/teams/TeamMembers.tsx
/usr/share/grafana/public/app/features/teams/TeamPages.test.tsx
/usr/share/grafana/public/app/features/teams/TeamPages.tsx
/usr/share/grafana/public/app/features/teams/TeamSettings.test.tsx
/usr/share/grafana/public/app/features/teams/TeamSettings.tsx
/usr/share/grafana/public/app/features/teams/__mocks__/navModelMock.ts
/usr/share/grafana/public/app/features/teams/__mocks__/teamMocks.ts
/usr/share/grafana/public/app/features/teams/__snapshots__/TeamGroupSync.test.tsx.snap
/usr/share/grafana/public/app/features/teams/__snapshots__/TeamList.test.tsx.snap
/usr/share/grafana/public/app/features/teams/__snapshots__/TeamMembers.test.tsx.snap
/usr/share/grafana/public/app/features/teams/__snapshots__/TeamPages.test.tsx.snap
/usr/share/grafana/public/app/features/teams/__snapshots__/TeamSettings.test.tsx.snap
/usr/share/grafana/public/app/features/teams/state/actions.ts
/usr/share/grafana/public/app/features/teams/state/navModel.ts
/usr/share/grafana/public/app/features/teams/state/reducers.test.ts
/usr/share/grafana/public/app/features/teams/state/reducers.ts
/usr/share/grafana/public/app/features/teams/state/selectors.test.ts
/usr/share/grafana/public/app/features/teams/state/selectors.ts
/usr/share/grafana/public/app/features/templating/TextBoxVariable.ts
/usr/share/grafana/public/app/features/templating/adhoc_variable.ts
/usr/share/grafana/public/app/features/templating/all.ts
/usr/share/grafana/public/app/features/templating/constant_variable.ts
/usr/share/grafana/public/app/features/templating/custom_variable.ts
/usr/share/grafana/public/app/features/templating/datasource_variable.ts
/usr/share/grafana/public/app/features/templating/editor_ctrl.ts
/usr/share/grafana/public/app/features/templating/interval_variable.ts
/usr/share/grafana/public/app/features/templating/partials/editor.html
/usr/share/grafana/public/app/features/templating/query_variable.ts
/usr/share/grafana/public/app/features/templating/specs/adhoc_variable.test.ts
/usr/share/grafana/public/app/features/templating/specs/editor_ctrl.test.ts
/usr/share/grafana/public/app/features/templating/specs/query_variable.test.ts
/usr/share/grafana/public/app/features/templating/specs/template_srv.test.ts
/usr/share/grafana/public/app/features/templating/specs/variable.test.ts
/usr/share/grafana/public/app/features/templating/specs/variable_srv.test.ts
/usr/share/grafana/public/app/features/templating/specs/variable_srv_init.test.ts
/usr/share/grafana/public/app/features/templating/template_srv.ts
/usr/share/grafana/public/app/features/templating/variable.ts
/usr/share/grafana/public/app/features/templating/variable_srv.ts
/usr/share/grafana/public/app/index.ts
/usr/share/grafana/public/app/partials/confirm_modal.html
/usr/share/grafana/public/app/partials/dashboard.html
/usr/share/grafana/public/app/partials/edit_json.html
/usr/share/grafana/public/app/partials/error.html
/usr/share/grafana/public/app/partials/login.html
/usr/share/grafana/public/app/partials/modal.html
/usr/share/grafana/public/app/partials/panelgeneral.html
/usr/share/grafana/public/app/partials/reset_password.html
/usr/share/grafana/public/app/partials/signup_invited.html
/usr/share/grafana/public/app/partials/signup_step2.html
/usr/share/grafana/public/app/partials/valueSelectDropdown.html
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/README.md
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/datasource.d.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/img/amazon-web-services.png
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/module.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/partials/query.parameter.html
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/plugin.json
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/query_parameter_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/cloudwatch/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/README.md
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/bucket_agg.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/elastic_response.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/img/elasticsearch.svg
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/index_pattern.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/metric_agg.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/module.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/partials/bucket_agg.html
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/partials/metric_agg.html
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/plugin.json
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/query_builder.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/query_def.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/query_help.md
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/specs/elastic_response.test.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/specs/index_pattern.test.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/specs/query_builder.test.ts
/usr/share/grafana/public/app/plugins/datasource/elasticsearch/specs/query_def.test.ts
/usr/share/grafana/public/app/plugins/datasource/grafana-live/_plugin.json
/usr/share/grafana/public/app/plugins/datasource/grafana-live/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/grafana-live/module.ts
/usr/share/grafana/public/app/plugins/datasource/grafana-live/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/grafana/README.md
/usr/share/grafana/public/app/plugins/datasource/grafana/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/grafana/module.ts
/usr/share/grafana/public/app/plugins/datasource/grafana/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/grafana/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/grafana/plugin.json
/usr/share/grafana/public/app/plugins/datasource/grafana/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/README.md
/usr/share/grafana/public/app/plugins/datasource/graphite/add_graphite_func.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/dashboards/carbon_metrics.json
/usr/share/grafana/public/app/plugins/datasource/graphite/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/func_editor.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/gfunc.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/graphite_query.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/img/graphite_logo.png
/usr/share/grafana/public/app/plugins/datasource/graphite/lexer.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/module.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/parser.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/graphite/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/graphite/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/graphite/plugin.json
/usr/share/grafana/public/app/plugins/datasource/graphite/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/query_help.md
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/gfunc.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/graphite_query.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/lexer.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/parser.test.ts
/usr/share/grafana/public/app/plugins/datasource/graphite/specs/query_ctrl.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/README.md
/usr/share/grafana/public/app/plugins/datasource/influxdb/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/img/influxdb_logo.svg
/usr/share/grafana/public/app/plugins/datasource/influxdb/influx_query.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/influx_series.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/module.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/influxdb/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/influxdb/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/influxdb/plugin.json
/usr/share/grafana/public/app/plugins/datasource/influxdb/query_builder.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/query_help.md
/usr/share/grafana/public/app/plugins/datasource/influxdb/query_part.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/response_parser.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/influx_query.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/influx_series.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/query_builder.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/query_ctrl.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/query_part.test.ts
/usr/share/grafana/public/app/plugins/datasource/influxdb/specs/response_parser.test.ts
/usr/share/grafana/public/app/plugins/datasource/logging/README.md
/usr/share/grafana/public/app/plugins/datasource/logging/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/logging/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/logging/img/grafana_icon.svg
/usr/share/grafana/public/app/plugins/datasource/logging/module.ts
/usr/share/grafana/public/app/plugins/datasource/logging/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/logging/plugin.json
/usr/share/grafana/public/app/plugins/datasource/logging/result_transformer.test.ts
/usr/share/grafana/public/app/plugins/datasource/logging/result_transformer.ts
/usr/share/grafana/public/app/plugins/datasource/mixed/README.md
/usr/share/grafana/public/app/plugins/datasource/mixed/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/mixed/module.ts
/usr/share/grafana/public/app/plugins/datasource/mixed/plugin.json
/usr/share/grafana/public/app/plugins/datasource/mssql/README.md
/usr/share/grafana/public/app/plugins/datasource/mssql/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/mssql/img/sql_server_logo.svg
/usr/share/grafana/public/app/plugins/datasource/mssql/module.ts
/usr/share/grafana/public/app/plugins/datasource/mssql/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/mssql/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/mssql/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/mssql/plugin.json
/usr/share/grafana/public/app/plugins/datasource/mssql/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/mssql/response_parser.ts
/usr/share/grafana/public/app/plugins/datasource/mssql/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/mysql/README.md
/usr/share/grafana/public/app/plugins/datasource/mysql/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/mysql/img/mysql_logo.svg
/usr/share/grafana/public/app/plugins/datasource/mysql/module.ts
/usr/share/grafana/public/app/plugins/datasource/mysql/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/mysql/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/mysql/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/mysql/plugin.json
/usr/share/grafana/public/app/plugins/datasource/mysql/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/mysql/response_parser.ts
/usr/share/grafana/public/app/plugins/datasource/mysql/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/README.md
/usr/share/grafana/public/app/plugins/datasource/opentsdb/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/datasource.d.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/img/opentsdb_logo.png
/usr/share/grafana/public/app/plugins/datasource/opentsdb/module.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/opentsdb/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/opentsdb/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/opentsdb/plugin.json
/usr/share/grafana/public/app/plugins/datasource/opentsdb/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/opentsdb/specs/query_ctrl.test.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/README.md
/usr/share/grafana/public/app/plugins/datasource/postgres/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/img/postgresql_logo.svg
/usr/share/grafana/public/app/plugins/datasource/postgres/meta_query.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/mode-sql.js
/usr/share/grafana/public/app/plugins/datasource/postgres/module.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/postgres/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/postgres/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/postgres/plugin.json
/usr/share/grafana/public/app/plugins/datasource/postgres/postgres_query.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/response_parser.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/specs/postgres_query.test.ts
/usr/share/grafana/public/app/plugins/datasource/postgres/sql_part.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/README.md
/usr/share/grafana/public/app/plugins/datasource/prometheus/add_label_to_query.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/completer.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/dashboards/grafana_stats.json
/usr/share/grafana/public/app/plugins/datasource/prometheus/dashboards/prometheus_2_stats.json
/usr/share/grafana/public/app/plugins/datasource/prometheus/dashboards/prometheus_stats.json
/usr/share/grafana/public/app/plugins/datasource/prometheus/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/img/prometheus_logo.svg
/usr/share/grafana/public/app/plugins/datasource/prometheus/metric_find_query.d.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/metric_find_query.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/mode-prometheus.js
/usr/share/grafana/public/app/plugins/datasource/prometheus/module.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/prometheus/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/prometheus/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/prometheus/plugin.json
/usr/share/grafana/public/app/plugins/datasource/prometheus/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/result_transformer.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/snippets/prometheus.js
/usr/share/grafana/public/app/plugins/datasource/prometheus/specs/add_label_to_query.test.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/specs/completer.test.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/specs/metric_find_query.test.ts
/usr/share/grafana/public/app/plugins/datasource/prometheus/specs/result_transformer.test.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/README.md
/usr/share/grafana/public/app/plugins/datasource/stackdriver/annotations_query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/config_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/constants.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/filter_segments.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/img/stackdriver_logo.png
/usr/share/grafana/public/app/plugins/datasource/stackdriver/module.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/partials/annotations.editor.html
/usr/share/grafana/public/app/plugins/datasource/stackdriver/partials/config.html
/usr/share/grafana/public/app/plugins/datasource/stackdriver/partials/query.aggregation.html
/usr/share/grafana/public/app/plugins/datasource/stackdriver/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/stackdriver/partials/query.filter.html
/usr/share/grafana/public/app/plugins/datasource/stackdriver/plugin.json
/usr/share/grafana/public/app/plugins/datasource/stackdriver/query_aggregation_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/query_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/query_filter_ctrl.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/specs/datasource.test.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/specs/query_aggregation_ctrl.test.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/specs/query_filter_ctrl.test.ts
/usr/share/grafana/public/app/plugins/datasource/stackdriver/specs/testData.ts
/usr/share/grafana/public/app/plugins/datasource/testdata/datasource.ts
/usr/share/grafana/public/app/plugins/datasource/testdata/module.ts
/usr/share/grafana/public/app/plugins/datasource/testdata/partials/query.editor.html
/usr/share/grafana/public/app/plugins/datasource/testdata/plugin.json
/usr/share/grafana/public/app/plugins/datasource/testdata/query_ctrl.ts
/usr/share/grafana/public/app/plugins/panel/alertlist/README.md
/usr/share/grafana/public/app/plugins/panel/alertlist/editor.html
/usr/share/grafana/public/app/plugins/panel/alertlist/img/icn-singlestat-panel.svg
/usr/share/grafana/public/app/plugins/panel/alertlist/module.html
/usr/share/grafana/public/app/plugins/panel/alertlist/module.ts
/usr/share/grafana/public/app/plugins/panel/alertlist/plugin.json
/usr/share/grafana/public/app/plugins/panel/dashlist/README.md
/usr/share/grafana/public/app/plugins/panel/dashlist/editor.html
/usr/share/grafana/public/app/plugins/panel/dashlist/img/icn-dashlist-panel.svg
/usr/share/grafana/public/app/plugins/panel/dashlist/module.html
/usr/share/grafana/public/app/plugins/panel/dashlist/module.ts
/usr/share/grafana/public/app/plugins/panel/dashlist/plugin.json
/usr/share/grafana/public/app/plugins/panel/gettingstarted/README.md
/usr/share/grafana/public/app/plugins/panel/gettingstarted/editor.html
/usr/share/grafana/public/app/plugins/panel/gettingstarted/img/icn-dashlist-panel.svg
/usr/share/grafana/public/app/plugins/panel/gettingstarted/module.html
/usr/share/grafana/public/app/plugins/panel/gettingstarted/module.ts
/usr/share/grafana/public/app/plugins/panel/gettingstarted/plugin.json
/usr/share/grafana/public/app/plugins/panel/graph/README.md
/usr/share/grafana/public/app/plugins/panel/graph/align_yaxes.ts
/usr/share/grafana/public/app/plugins/panel/graph/axes_editor.html
/usr/share/grafana/public/app/plugins/panel/graph/axes_editor.ts
/usr/share/grafana/public/app/plugins/panel/graph/data_processor.ts
/usr/share/grafana/public/app/plugins/panel/graph/graph.ts
/usr/share/grafana/public/app/plugins/panel/graph/graph_tooltip.d.ts
/usr/share/grafana/public/app/plugins/panel/graph/graph_tooltip.ts
/usr/share/grafana/public/app/plugins/panel/graph/histogram.ts
/usr/share/grafana/public/app/plugins/panel/graph/img/icn-graph-panel.svg
/usr/share/grafana/public/app/plugins/panel/graph/jquery.flot.events.ts
/usr/share/grafana/public/app/plugins/panel/graph/legend.ts
/usr/share/grafana/public/app/plugins/panel/graph/module.ts
/usr/share/grafana/public/app/plugins/panel/graph/plugin.json
/usr/share/grafana/public/app/plugins/panel/graph/series_overrides_ctrl.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/align_yaxes.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/data_processor.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/graph.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/graph_ctrl.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/graph_tooltip.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/histogram.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/series_override_ctrl.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/specs/threshold_manager.test.ts
/usr/share/grafana/public/app/plugins/panel/graph/tab_display.html
/usr/share/grafana/public/app/plugins/panel/graph/tab_legend.html
/usr/share/grafana/public/app/plugins/panel/graph/template.ts
/usr/share/grafana/public/app/plugins/panel/graph/threshold_manager.ts
/usr/share/grafana/public/app/plugins/panel/graph/thresholds_form.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/README.md
/usr/share/grafana/public/app/plugins/panel/heatmap/axes_editor.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/color_legend.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/color_scale.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/display_editor.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/heatmap_ctrl.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/heatmap_data_converter.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/heatmap_tooltip.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/img/icn-heatmap-panel.svg
/usr/share/grafana/public/app/plugins/panel/heatmap/module.html
/usr/share/grafana/public/app/plugins/panel/heatmap/module.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/partials/axes_editor.html
/usr/share/grafana/public/app/plugins/panel/heatmap/partials/display_editor.html
/usr/share/grafana/public/app/plugins/panel/heatmap/plugin.json
/usr/share/grafana/public/app/plugins/panel/heatmap/rendering.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/specs/heatmap_ctrl.test.ts
/usr/share/grafana/public/app/plugins/panel/heatmap/specs/heatmap_data_converter.test.ts
/usr/share/grafana/public/app/plugins/panel/pluginlist/README.md
/usr/share/grafana/public/app/plugins/panel/pluginlist/editor.html
/usr/share/grafana/public/app/plugins/panel/pluginlist/img/icn-dashlist-panel.svg
/usr/share/grafana/public/app/plugins/panel/pluginlist/module.html
/usr/share/grafana/public/app/plugins/panel/pluginlist/module.ts
/usr/share/grafana/public/app/plugins/panel/pluginlist/plugin.json
/usr/share/grafana/public/app/plugins/panel/singlestat/README.md
/usr/share/grafana/public/app/plugins/panel/singlestat/editor.html
/usr/share/grafana/public/app/plugins/panel/singlestat/img/icn-singlestat-panel.svg
/usr/share/grafana/public/app/plugins/panel/singlestat/mappings.html
/usr/share/grafana/public/app/plugins/panel/singlestat/module.html
/usr/share/grafana/public/app/plugins/panel/singlestat/module.ts
/usr/share/grafana/public/app/plugins/panel/singlestat/plugin.json
/usr/share/grafana/public/app/plugins/panel/singlestat/specs/singlestat.test.ts
/usr/share/grafana/public/app/plugins/panel/singlestat/specs/singlestat_panel.test.ts
/usr/share/grafana/public/app/plugins/panel/table/README.md
/usr/share/grafana/public/app/plugins/panel/table/column_options.html
/usr/share/grafana/public/app/plugins/panel/table/column_options.ts
/usr/share/grafana/public/app/plugins/panel/table/editor.html
/usr/share/grafana/public/app/plugins/panel/table/editor.ts
/usr/share/grafana/public/app/plugins/panel/table/img/icn-table-panel.svg
/usr/share/grafana/public/app/plugins/panel/table/module.html
/usr/share/grafana/public/app/plugins/panel/table/module.ts
/usr/share/grafana/public/app/plugins/panel/table/plugin.json
/usr/share/grafana/public/app/plugins/panel/table/renderer.ts
/usr/share/grafana/public/app/plugins/panel/table/specs/renderer.test.ts
/usr/share/grafana/public/app/plugins/panel/table/specs/transformers.test.ts
/usr/share/grafana/public/app/plugins/panel/table/transformers.ts
/usr/share/grafana/public/app/plugins/panel/text/README.md
/usr/share/grafana/public/app/plugins/panel/text/editor.html
/usr/share/grafana/public/app/plugins/panel/text/img/icn-text-panel.svg
/usr/share/grafana/public/app/plugins/panel/text/module.html
/usr/share/grafana/public/app/plugins/panel/text/module.ts
/usr/share/grafana/public/app/plugins/panel/text/plugin.json
/usr/share/grafana/public/app/plugins/panel/unknown/module.html
/usr/share/grafana/public/app/plugins/panel/unknown/module.ts
/usr/share/grafana/public/app/plugins/sdk.ts
/usr/share/grafana/public/app/routes/ReactContainer.tsx
/usr/share/grafana/public/app/routes/dashboard_loaders.ts
/usr/share/grafana/public/app/routes/routes.ts
/usr/share/grafana/public/app/store/configureStore.ts
/usr/share/grafana/public/app/types/acl.ts
/usr/share/grafana/public/app/types/alerting.ts
/usr/share/grafana/public/app/types/apiKeys.ts
/usr/share/grafana/public/app/types/dashboard.ts
/usr/share/grafana/public/app/types/datasources.ts
/usr/share/grafana/public/app/types/explore.ts
/usr/share/grafana/public/app/types/folders.ts
/usr/share/grafana/public/app/types/index.ts
/usr/share/grafana/public/app/types/location.ts
/usr/share/grafana/public/app/types/navModel.ts
/usr/share/grafana/public/app/types/plugins.ts
/usr/share/grafana/public/app/types/teams.ts
/usr/share/grafana/public/app/types/user.ts
/usr/share/grafana/public/build/1.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/1.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/5.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/5.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/app.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/app.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/dark.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/dark.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/explore.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/explore.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/grafana.dark.css
/usr/share/grafana/public/build/grafana.light.css
/usr/share/grafana/public/build/light.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/light.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/build/vendor.4ad1072db19f1dad74f5.js
/usr/share/grafana/public/build/vendor.4ad1072db19f1dad74f5.js.map
/usr/share/grafana/public/dashboards/default.json
/usr/share/grafana/public/dashboards/home.json
/usr/share/grafana/public/dashboards/scripted.js
/usr/share/grafana/public/dashboards/scripted_async.js
/usr/share/grafana/public/dashboards/scripted_templated.js
/usr/share/grafana/public/dashboards/template_vars.json
/usr/share/grafana/public/emails/README.md
/usr/share/grafana/public/emails/alert_notification.html
/usr/share/grafana/public/emails/alert_notification_example.html
/usr/share/grafana/public/emails/invited_to_org.html
/usr/share/grafana/public/emails/new_user_invite.html
/usr/share/grafana/public/emails/reset_password.html
/usr/share/grafana/public/emails/signup_started.html
/usr/share/grafana/public/emails/welcome_on_signup.html
/usr/share/grafana/public/fonts/FontAwesome.otf
/usr/share/grafana/public/fonts/fontawesome-webfont.eot
/usr/share/grafana/public/fonts/fontawesome-webfont.svg
/usr/share/grafana/public/fonts/fontawesome-webfont.ttf
/usr/share/grafana/public/fonts/fontawesome-webfont.woff
/usr/share/grafana/public/fonts/fontawesome-webfont.woff2
/usr/share/grafana/public/fonts/grafana-icons.eot
/usr/share/grafana/public/fonts/grafana-icons.svg
/usr/share/grafana/public/fonts/grafana-icons.ttf
/usr/share/grafana/public/fonts/grafana-icons.woff
/usr/share/grafana/public/fonts/opensans/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTRWV49_lSm1NYrwo-zkhivY.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTT0LW-43aMEzIO6XUTLjad8.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTZX5f-9o1vgP2EXwfjgl7AY.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTa-j2U0lmluP9RWlSytm3ho.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTaaRobkAwv3vxw3jMhVENGA.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTegdm0LZdjqr5-oayXSOefg.woff2
/usr/share/grafana/public/fonts/opensans/DXI1ORHCpsQm3Vp6mXoaTf8zf_FOSsgRmwsS7Aa9k2w.woff2
/usr/share/grafana/public/fonts/opensans/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/opensans/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2
/usr/share/grafana/public/fonts/opensans/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2
/usr/share/grafana/public/fonts/opensans/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/opensans/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzBWV49_lSm1NYrwo-zkhivY.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzD0LW-43aMEzIO6XUTLjad8.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzJX5f-9o1vgP2EXwfjgl7AY.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzK-j2U0lmluP9RWlSytm3ho.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzKaRobkAwv3vxw3jMhVENGA.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzOgdm0LZdjqr5-oayXSOefg.woff2
/usr/share/grafana/public/fonts/opensans/k3k702ZOKiLJc3WVjuplzP8zf_FOSsgRmwsS7Aa9k2w.woff2
/usr/share/grafana/public/fonts/opensans/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2
/usr/share/grafana/public/fonts/opensans/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2
/usr/share/grafana/public/fonts/opensans/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/1hZf02POANh32k2VkgEoUBTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2
/usr/share/grafana/public/fonts/roboto/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/K23cxWVTrIFD6DJsEVi07RTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/fonts/roboto/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0SYE0-AqJ3nfInTTiDXDjU4.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0TTOQ_MqJVwkKsUn0wKzc2I.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0TUj_cnvWIuuBMVgbX098Mw.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0UbcKLIaa1LC45dFaAfauRA.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0Wo_sUJ8uO4YLWRInS22T3Y.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0Y4P5ICox8Kq3LLUNMylGO4.woff2
/usr/share/grafana/public/fonts/roboto/OLffGBTaF0XFOW1gnuHF0b6up8jxqWt8HVA3mDhkV_0.woff2
/usr/share/grafana/public/fonts/roboto/OpXUqTo0UgQQhGj_SFdLWBTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/fonts/roboto/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2
/usr/share/grafana/public/fonts/roboto/WxrXJa0C3KdtC7lMafG4dRTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/fonts/roboto/ZLqKeelYbATG60EpZBSDyxJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/cDKhRaXnQTOVbaoxwdOr9xTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/fonts/roboto/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/mbmhprMH69Zi6eEPBYVFhRJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/mx9Uck6uB63VIKFYnEMXrRJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/oHi30kwQWvpCWqAhzHcCSBJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/oOeFwZNlrTefzLYmlVV1UBJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/rGvHdJnr2l75qb0YND9NyBJtnKITppOI_IvcXXDNrsc.woff2
/usr/share/grafana/public/fonts/roboto/vPcynSL0qHq_6dX7lKVByfesZW2xOQ-xsNqO47m55DA.woff2
/usr/share/grafana/public/fonts/roboto/vSzulfKSK0LLjjfeaxcREhTbgVql8nDJpwnrE27mub0.woff2
/usr/share/grafana/public/img/alert_howto_new.png
/usr/share/grafana/public/img/angle_gradient_light_rev.png
/usr/share/grafana/public/img/angle_gradient_rev.png
/usr/share/grafana/public/img/apple-touch-icon.png
/usr/share/grafana/public/img/background_tease.jpg
/usr/share/grafana/public/img/browserconfig.xml
/usr/share/grafana/public/img/check_radio_sheet.png
/usr/share/grafana/public/img/checkbox.png
/usr/share/grafana/public/img/checkbox_white.png
/usr/share/grafana/public/img/critical.svg
/usr/share/grafana/public/img/cubes.png
/usr/share/grafana/public/img/envelope.png
/usr/share/grafana/public/img/fav32.png
/usr/share/grafana/public/img/glyphicons-halflings-white.png
/usr/share/grafana/public/img/glyphicons-halflings.png
/usr/share/grafana/public/img/grab_dark.svg
/usr/share/grafana/public/img/grab_light.svg
/usr/share/grafana/public/img/grafana_com_auth_icon.svg
/usr/share/grafana/public/img/grafana_icon.svg
/usr/share/grafana/public/img/grafana_mask_icon.svg
/usr/share/grafana/public/img/grafana_mask_icon_white.svg
/usr/share/grafana/public/img/grafana_net_logo.svg
/usr/share/grafana/public/img/graph404.svg
/usr/share/grafana/public/img/heatmap_bg_test.svg
/usr/share/grafana/public/img/icn-app.svg
/usr/share/grafana/public/img/icn-dashboard-tiny.svg
/usr/share/grafana/public/img/icn-dashboard.svg
/usr/share/grafana/public/img/icn-datasource.svg
/usr/share/grafana/public/img/icn-panel.svg
/usr/share/grafana/public/img/icn-plugins-tiny.svg
/usr/share/grafana/public/img/icn-row.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_annotation.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_annotation_alt.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_data_sources.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_folder.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_link.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_notification_channel.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_panel.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_team.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_user.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_add_variable.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_alert.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_alert_alt.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_alert_off.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_alert_rules.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_annotation.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_annotation_alt.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_apikeys.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_cog.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_dashboard.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_dashboard_fav.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_dashboard_list.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_data_sources.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_editor.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_home.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_import_dashboard.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_json.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_link.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_new_dashboard.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_notification_channels.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_org.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_playlist.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_plugins.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_preferences.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_question.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_shield.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_sitemap.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_snapshots.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_team.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_user.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_variable.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_viewer.svg
/usr/share/grafana/public/img/icons_dark_theme/icon_zoom_out.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_annotation.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_annotation_alt.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_data_sources.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_folder.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_link.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_notification_channel.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_panel.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_team.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_user.svg
/usr/share/grafana/public/img/icons_light_theme/icon_add_variable.svg
/usr/share/grafana/public/img/icons_light_theme/icon_alert.svg
/usr/share/grafana/public/img/icons_light_theme/icon_alert_alt.svg
/usr/share/grafana/public/img/icons_light_theme/icon_alert_off.svg
/usr/share/grafana/public/img/icons_light_theme/icon_alert_rules.svg
/usr/share/grafana/public/img/icons_light_theme/icon_annotation.svg
/usr/share/grafana/public/img/icons_light_theme/icon_annotation_alt.svg
/usr/share/grafana/public/img/icons_light_theme/icon_apikeys.svg
/usr/share/grafana/public/img/icons_light_theme/icon_cog.svg
/usr/share/grafana/public/img/icons_light_theme/icon_dashboard.svg
/usr/share/grafana/public/img/icons_light_theme/icon_dashboard_fav.svg
/usr/share/grafana/public/img/icons_light_theme/icon_dashboard_list.svg
/usr/share/grafana/public/img/icons_light_theme/icon_data_sources.svg
/usr/share/grafana/public/img/icons_light_theme/icon_editor.svg
/usr/share/grafana/public/img/icons_light_theme/icon_home.svg
/usr/share/grafana/public/img/icons_light_theme/icon_import_dashboard.svg
/usr/share/grafana/public/img/icons_light_theme/icon_json.svg
/usr/share/grafana/public/img/icons_light_theme/icon_link.svg
/usr/share/grafana/public/img/icons_light_theme/icon_new_dashboard.svg
/usr/share/grafana/public/img/icons_light_theme/icon_notification_channels.svg
/usr/share/grafana/public/img/icons_light_theme/icon_org.svg
/usr/share/grafana/public/img/icons_light_theme/icon_playlist.svg
/usr/share/grafana/public/img/icons_light_theme/icon_plugins.svg
/usr/share/grafana/public/img/icons_light_theme/icon_preferences.svg
/usr/share/grafana/public/img/icons_light_theme/icon_question.svg
/usr/share/grafana/public/img/icons_light_theme/icon_shield.svg
/usr/share/grafana/public/img/icons_light_theme/icon_sitemap.svg
/usr/share/grafana/public/img/icons_light_theme/icon_snapshots.svg
/usr/share/grafana/public/img/icons_light_theme/icon_team.svg
/usr/share/grafana/public/img/icons_light_theme/icon_user.svg
/usr/share/grafana/public/img/icons_light_theme/icon_variable.svg
/usr/share/grafana/public/img/icons_light_theme/icon_viewer.svg
/usr/share/grafana/public/img/icons_light_theme/icon_zoom_out.svg
/usr/share/grafana/public/img/light.png
/usr/share/grafana/public/img/load.gif
/usr/share/grafana/public/img/load_big.gif
/usr/share/grafana/public/img/loading-pulse.svg
/usr/share/grafana/public/img/logo_transparent_200x.png
/usr/share/grafana/public/img/logo_transparent_200x75.png
/usr/share/grafana/public/img/logo_transparent_400x.png
/usr/share/grafana/public/img/mixed_styles.png
/usr/share/grafana/public/img/mstile-150x150.png
/usr/share/grafana/public/img/online.svg
/usr/share/grafana/public/img/page_header_line.png
/usr/share/grafana/public/img/plugin-default-logo_dark.svg
/usr/share/grafana/public/img/plugin-default-logo_light.svg
/usr/share/grafana/public/img/rendering_error.png
/usr/share/grafana/public/img/rendering_limit.png
/usr/share/grafana/public/img/rendering_plugin_not_installed.png
/usr/share/grafana/public/img/rendering_timeout.png
/usr/share/grafana/public/img/transparent.png
/usr/share/grafana/public/img/user_profile.png
/usr/share/grafana/public/img/warn-tiny.svg
/usr/share/grafana/public/img/warn.svg
/usr/share/grafana/public/robots.txt
/usr/share/grafana/public/sass/_grafana.scss
/usr/share/grafana/public/sass/_old_responsive.scss
/usr/share/grafana/public/sass/_variables.dark.scss
/usr/share/grafana/public/sass/_variables.light.scss
/usr/share/grafana/public/sass/_variables.scss
/usr/share/grafana/public/sass/base/_code.scss
/usr/share/grafana/public/sass/base/_font_awesome.scss
/usr/share/grafana/public/sass/base/_fonts.scss
/usr/share/grafana/public/sass/base/_forms.scss
/usr/share/grafana/public/sass/base/_grafana_icons.scss
/usr/share/grafana/public/sass/base/_grid.scss
/usr/share/grafana/public/sass/base/_icons.scss
/usr/share/grafana/public/sass/base/_normalize.scss
/usr/share/grafana/public/sass/base/_reboot.scss
/usr/share/grafana/public/sass/base/_type.scss
/usr/share/grafana/public/sass/base/font-awesome/_animated.scss
/usr/share/grafana/public/sass/base/font-awesome/_bordered-pulled.scss
/usr/share/grafana/public/sass/base/font-awesome/_core.scss
/usr/share/grafana/public/sass/base/font-awesome/_fixed-width.scss
/usr/share/grafana/public/sass/base/font-awesome/_icons.scss
/usr/share/grafana/public/sass/base/font-awesome/_larger.scss
/usr/share/grafana/public/sass/base/font-awesome/_list.scss
/usr/share/grafana/public/sass/base/font-awesome/_mixins.scss
/usr/share/grafana/public/sass/base/font-awesome/_path.scss
/usr/share/grafana/public/sass/base/font-awesome/_rotated-flipped.scss
/usr/share/grafana/public/sass/base/font-awesome/_screen-reader.scss
/usr/share/grafana/public/sass/base/font-awesome/_stacked.scss
/usr/share/grafana/public/sass/base/font-awesome/_variables.scss
/usr/share/grafana/public/sass/components/_alerts.scss
/usr/share/grafana/public/sass/components/_buttons.scss
/usr/share/grafana/public/sass/components/_cards.scss
/usr/share/grafana/public/sass/components/_code_editor.scss
/usr/share/grafana/public/sass/components/_color_picker.scss
/usr/share/grafana/public/sass/components/_dashboard_grid.scss
/usr/share/grafana/public/sass/components/_dashboard_list.scss
/usr/share/grafana/public/sass/components/_dashboard_settings.scss
/usr/share/grafana/public/sass/components/_delete_button.scss
/usr/share/grafana/public/sass/components/_description-picker.scss
/usr/share/grafana/public/sass/components/_drop.scss
/usr/share/grafana/public/sass/components/_dropdown.scss
/usr/share/grafana/public/sass/components/_empty_list_cta.scss
/usr/share/grafana/public/sass/components/_filter-controls.scss
/usr/share/grafana/public/sass/components/_filter-list.scss
/usr/share/grafana/public/sass/components/_filter-table.scss
/usr/share/grafana/public/sass/components/_footer.scss
/usr/share/grafana/public/sass/components/_form_select_box.scss
/usr/share/grafana/public/sass/components/_gf-form.scss
/usr/share/grafana/public/sass/components/_infobox.scss
/usr/share/grafana/public/sass/components/_json_explorer.scss
/usr/share/grafana/public/sass/components/_jsontree.scss
/usr/share/grafana/public/sass/components/_modals.scss
/usr/share/grafana/public/sass/components/_navbar.scss
/usr/share/grafana/public/sass/components/_navs.scss
/usr/share/grafana/public/sass/components/_old_stuff.scss
/usr/share/grafana/public/sass/components/_page_header.scss
/usr/share/grafana/public/sass/components/_panel_add_panel.scss
/usr/share/grafana/public/sass/components/_panel_alertlist.scss
/usr/share/grafana/public/sass/components/_panel_dashlist.scss
/usr/share/grafana/public/sass/components/_panel_gettingstarted.scss
/usr/share/grafana/public/sass/components/_panel_graph.scss
/usr/share/grafana/public/sass/components/_panel_heatmap.scss
/usr/share/grafana/public/sass/components/_panel_pluginlist.scss
/usr/share/grafana/public/sass/components/_panel_singlestat.scss
/usr/share/grafana/public/sass/components/_panel_table.scss
/usr/share/grafana/public/sass/components/_panel_text.scss
/usr/share/grafana/public/sass/components/_popper.scss
/usr/share/grafana/public/sass/components/_query_editor.scss
/usr/share/grafana/public/sass/components/_query_part.scss
/usr/share/grafana/public/sass/components/_row.scss
/usr/share/grafana/public/sass/components/_scrollbar.scss
/usr/share/grafana/public/sass/components/_search.scss
/usr/share/grafana/public/sass/components/_settings_permissions.scss
/usr/share/grafana/public/sass/components/_shortcuts.scss
/usr/share/grafana/public/sass/components/_sidemenu.scss
/usr/share/grafana/public/sass/components/_slate_editor.scss
/usr/share/grafana/public/sass/components/_submenu.scss
/usr/share/grafana/public/sass/components/_switch.scss
/usr/share/grafana/public/sass/components/_tabbed_view.scss
/usr/share/grafana/public/sass/components/_tables_lists.scss
/usr/share/grafana/public/sass/components/_tabs.scss
/usr/share/grafana/public/sass/components/_tags.scss
/usr/share/grafana/public/sass/components/_tagsinput.scss
/usr/share/grafana/public/sass/components/_timepicker.scss
/usr/share/grafana/public/sass/components/_tooltip.scss
/usr/share/grafana/public/sass/components/_typeahead.scss
/usr/share/grafana/public/sass/components/_user-picker.scss
/usr/share/grafana/public/sass/components/_view_states.scss
/usr/share/grafana/public/sass/components/edit_sidemenu.scss
/usr/share/grafana/public/sass/fonts.scss
/usr/share/grafana/public/sass/grafana.dark.scss
/usr/share/grafana/public/sass/grafana.light.scss
/usr/share/grafana/public/sass/icons.json
/usr/share/grafana/public/sass/layout/_lists.scss
/usr/share/grafana/public/sass/layout/_page.scss
/usr/share/grafana/public/sass/mixins/_animations.scss
/usr/share/grafana/public/sass/mixins/_breakpoints.scss
/usr/share/grafana/public/sass/mixins/_buttons.scss
/usr/share/grafana/public/sass/mixins/_drop_element.scss
/usr/share/grafana/public/sass/mixins/_forms.scss
/usr/share/grafana/public/sass/mixins/_grid-framework.scss
/usr/share/grafana/public/sass/mixins/_grid.scss
/usr/share/grafana/public/sass/mixins/_hover.scss
/usr/share/grafana/public/sass/mixins/_mixins.scss
/usr/share/grafana/public/sass/pages/_admin.scss
/usr/share/grafana/public/sass/pages/_alerting.scss
/usr/share/grafana/public/sass/pages/_dashboard.scss
/usr/share/grafana/public/sass/pages/_errorpage.scss
/usr/share/grafana/public/sass/pages/_explore.scss
/usr/share/grafana/public/sass/pages/_history.scss
/usr/share/grafana/public/sass/pages/_login.scss
/usr/share/grafana/public/sass/pages/_playlist.scss
/usr/share/grafana/public/sass/pages/_plugins.scss
/usr/share/grafana/public/sass/pages/_signup.scss
/usr/share/grafana/public/sass/pages/_styleguide.scss
/usr/share/grafana/public/sass/utils/_angular.scss
/usr/share/grafana/public/sass/utils/_flex.scss
/usr/share/grafana/public/sass/utils/_spacings.scss
/usr/share/grafana/public/sass/utils/_utils.scss
/usr/share/grafana/public/sass/utils/_validation.scss
/usr/share/grafana/public/sass/utils/_widths.scss
/usr/share/grafana/public/test/core/utils/version_test.ts
/usr/share/grafana/public/test/index.ts
/usr/share/grafana/public/test/jest-setup.ts
/usr/share/grafana/public/test/jest-shim.ts
/usr/share/grafana/public/test/lib/common.ts
/usr/share/grafana/public/test/mocks/angular.ts
/usr/share/grafana/public/test/mocks/backend_srv.ts
/usr/share/grafana/public/test/mocks/common.ts
/usr/share/grafana/public/test/mocks/dashboard-mock.js
/usr/share/grafana/public/test/specs/helpers.ts
/usr/share/grafana/public/vendor/angular-other/angular-strap.js
/usr/share/grafana/public/vendor/angular-other/datepicker.js
/usr/share/grafana/public/vendor/angular-other/timepicker.js
/usr/share/grafana/public/vendor/angular-ui/ui-bootstrap-tpls.js
/usr/share/grafana/public/vendor/bootstrap/bootstrap.js
/usr/share/grafana/public/vendor/css/rc-cascader.scss
/usr/share/grafana/public/vendor/css/spectrum.css
/usr/share/grafana/public/vendor/css/timepicker.css
/usr/share/grafana/public/vendor/flot/jquery.flot.crosshair.js
/usr/share/grafana/public/vendor/flot/jquery.flot.dashes.js
/usr/share/grafana/public/vendor/flot/jquery.flot.fillbelow.js
/usr/share/grafana/public/vendor/flot/jquery.flot.fillbetween.js
/usr/share/grafana/public/vendor/flot/jquery.flot.gauge.js
/usr/share/grafana/public/vendor/flot/jquery.flot.js
/usr/share/grafana/public/vendor/flot/jquery.flot.pie.js
/usr/share/grafana/public/vendor/flot/jquery.flot.selection.js
/usr/share/grafana/public/vendor/flot/jquery.flot.stack.js
/usr/share/grafana/public/vendor/flot/jquery.flot.stackpercent.js
/usr/share/grafana/public/vendor/flot/jquery.flot.time.js
/usr/share/grafana/public/vendor/jquery-ui/custom.js
/usr/share/grafana/public/vendor/plugin-css/css.js
/usr/share/grafana/public/vendor/plugin-text/text.js
/usr/share/grafana/public/vendor/spectrum.js
/usr/share/grafana/public/vendor/tagsinput/bootstrap-tagsinput.js
/usr/share/grafana/public/views/error.html
/usr/share/grafana/public/views/index.html
/usr/share/grafana/public/views/index.template.html
/usr/share/grafana/scripts/build
/usr/share/grafana/scripts/circle-test-backend.sh
/usr/share/grafana/scripts/circle-test-frontend.sh
/usr/share/grafana/scripts/grunt
/usr/share/grafana/scripts/import_many_dashboards.sh
/usr/share/grafana/scripts/tag_release.sh
/usr/share/grafana/scripts/trigger_docker_build.sh
/usr/share/grafana/scripts/trigger_grafana_packer.sh
/usr/share/grafana/scripts/trigger_windows_build.sh
/usr/share/grafana/scripts/webpack
/usr/share/grafana/tools/phantomjs/phantomjs
/usr/share/grafana/tools/phantomjs/render.js

grafana ab Version 7.x

Nachfolgende Abghängigkeiten sind ab Grafana Version 7.x zusätzlich noch zu installieren, damit das spätere plugin lauffähig ist:

# yum install libXcomposite libXdamage libXtst cups libXScrnSaver pango atk adwaita-cursor-theme adwaita-icon-theme at at-spi2-atk at-spi2-core cairo-gobject colord-libs dconf desktop-file-utils ed emacs-filesystem gdk-pixbuf2 glib-networking gnutls gsettings-desktop-schemas gtk-update-icon-cache gtk3 hicolor-icon-theme jasper-libs json-glib libappindicator-gtk3 libdbusmenu libdbusmenu-gtk3 libepoxy liberation-fonts liberation-narrow-fonts liberation-sans-fonts liberation-serif-fonts libgusb libindicator-gtk3 libmodman libproxy libsoup libwayland-cursor libwayland-egl libxkbcommon m4 mailx nettle patch psmisc redhat-lsb-core redhat-lsb-submod-security rest spax time trousers xdg-utils xkeyboard-config

:!: HINWEIS - Möglicherweise sind viele der oben genannten rpm-Pakete bereits installiert!

:!: HINWEIS - Der Vollständigkeit halber, sind hier alle Abhängigkeiten aufgelistet.

grafana-image-renderer ab Version 7.x

Das Plugin grafana-image-renderer muss ab der Grafana Version 7.x, mit nachfolgendem Befehl, installiert werden, damit Grafiken in Icinga gerendert werden können:

# grafana-cli plugins install grafana-image-renderer
installing grafana-image-renderer @ 2.0.0
from: https://grafana.com/api/plugins/grafana-image-renderer/versions/2.0.0/download
into: /var/lib/grafana/plugins


✔ Installed grafana-image-renderer successfully 

Restart grafana after installing plugins . <service grafana-server restart>

grafana.service: Dienst/Deamon-Start einrichten

Um Grafana, welches als Dienst/Deamon als Hintergrundprozess läuft, auch nach einem Neustart des Servers zur Verfügung zu haben, soll der Dienst/Daemon mit dem Server mit gestartet werden, was mit nachfolgendem Befehl realisiert werden kann:

# systemctl daemon-reload
# systemctl enable grafana-server.service
Created symlink from /etc/systemd/system/multi-user.target.wants/grafana-server.service to /usr/lib/systemd/system/grafana-server.service.

Eine Überprüfung, ob beim Neustart des Server der grafana-server.service-Dienst/Deamon wirklich mit gestartet wird, kann mit nachfolgendem Befehl erfolgen und sollte eine Anzeige, wie ebenfalls nachfolgend dargestellt ausgeben:

# systemctl list-unit-files --type=service | grep -e grafana-server.service
grafana-server.service                        enabled 

bzw.

# systemctl is-enabled grafana-server.service
enabled

icingaweb2-module-graphite

Mit nachfolgendem Befehl kann die zuvor, wie unter nachfolgendem internen Link beschrieben

heruntergeladene Datei, in das Zielverzeichnis

entpackt werden:

# unzip /tmp/master.zip -d /usr/share/icingaweb2/modules

Abschließend muss nun noch das durch das entpacken neu entstandene Verzeichnis mit nachfolgendem Befehl umbenannt werden:

# mv /usr/share/icingaweb2/modules/icingaweb2-module-grafana-master /usr/share/icingaweb2/modules/grafana

Konfiguration: grafana

Nachfolgende Konfigurationen basieren auf den Informationen unter nachfolgenden externen Links:

/etc/grafana/grafana.ini

Nachfolgende Konfigurationsdatei

beinhaltete alle Konfigurationsdirektiven.

Nachfolgende die komplette Konfigurationsdatei:

##################### Grafana Configuration Example #####################
#
# Everything has defaults so you only need to uncomment things you want to
# change
 
# possible values : production, development
;app_mode = production
 
# instance name, defaults to HOSTNAME environment variable value or hostname if HOSTNAME var is empty
;instance_name = ${HOSTNAME}
 
#################################### Paths ####################################
[paths]
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
;data = /var/lib/grafana
 
# Temporary files in `data` directory older than given duration will be removed
;temp_data_lifetime = 24h
 
# Directory where grafana can store logs
;logs = /var/log/grafana
 
# Directory where grafana will automatically scan and look for plugins
;plugins = /var/lib/grafana/plugins
 
# folder that contains provisioning config files that grafana will apply on startup and while running.
;provisioning = conf/provisioning
 
#################################### Server ####################################
[server]
# Protocol (http, https, socket)
;protocol = http
 
# The ip address to bind to, empty will bind to all interfaces
;http_addr =
 
# The http port  to use
;http_port = 3000
 
# The public facing domain name used to access grafana from a browser
# Tachtler
# default: ;domain = localhost
domain = grafana.tachtler.net
 
# Redirect to correct domain if host header does not match domain
# Prevents DNS rebinding attacks
;enforce_domain = false
 
# The full public facing url you use in browser, used for redirects and emails
# If you use reverse proxy and sub path specify full url (with sub path)
;root_url = http://localhost:3000
 
# Log web requests
;router_logging = false
 
# the path relative working path
;static_root_path = public
 
# enable gzip
;enable_gzip = false
 
# https certs & key file
;cert_file =
;cert_key =
 
# Unix socket path
;socket =
 
#################################### Database ####################################
[database]
# You can configure the database connection by specifying type, host, name, user and password
# as separate properties or as on string using the url properties.
 
# Either "mysql", "postgres" or "sqlite3", it's your choice
;type = sqlite3
;host = 127.0.0.1:3306
;name = grafana
;user = root
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
;password =
 
# Use either URL or the previous fields to configure the database
# Example: mysql://user:secret@host:port/database
# Tachtler
# default: ;url =
url = mysql://grafanauser:geheim@db.idmz.tachtler.net:3306/grafana
 
# For "postgres" only, either "disable", "require" or "verify-full"
;ssl_mode = disable
 
# For "sqlite3" only, path relative to data_path setting
;path = grafana.db
 
# Max idle conn setting default is 2
;max_idle_conn = 2
 
# Max conn setting default is 0 (mean not set)
;max_open_conn =
 
# Connection Max Lifetime default is 14400 (means 14400 seconds or 4 hours)
;conn_max_lifetime = 14400
 
# Set to true to log the sql calls and execution times.
log_queries =
 
#################################### Session ####################################
[session]
# Either "memory", "file", "redis", "mysql", "postgres", default is "file"
;provider = file
 
# Provider config options
# memory: not have any config yet
# file: session dir path, is relative to grafana data_path
# redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=grafana`
# mysql: go-sql-driver/mysql dsn config string, e.g. `user:password@tcp(127.0.0.1:3306)/database_name`
# postgres: user=a password=b host=localhost port=5432 dbname=c sslmode=disable
;provider_config = sessions
 
# Session cookie name
;cookie_name = grafana_sess
 
# If you use session in https only, default is false
;cookie_secure = false
 
# Session life time, default is 86400
;session_life_time = 86400
 
#################################### Data proxy ###########################
[dataproxy]
 
# This enables data proxy logging, default is false
;logging = false
 
#################################### Analytics ####################################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
# No ip addresses are being tracked, only simple counters to track
# running instances, dashboard and error counts. It is very helpful to us.
# Change this option to false to disable reporting.
;reporting_enabled = true
 
# Set to false to disable all checks to https://grafana.net
# for new vesions (grafana itself and plugins), check is used
# in some UI views to notify that grafana or plugin update exists
# This option does not cause any auto updates, nor send any information
# only a GET request to http://grafana.com to get latest versions
;check_for_updates = true
 
# Google Analytics universal tracking code, only enabled if you specify an id here
;google_analytics_ua_id =
 
#################################### Security ####################################
[security]
# default admin user, created on startup
;admin_user = admin
 
# default admin password, can be changed before first start of grafana,  or in profile settings
;admin_password = admin
 
# used for signing
;secret_key = SW2YcwTIb9zpOOhoPsMm
 
# Auto-login remember days
;login_remember_days = 7
;cookie_username = grafana_user
;cookie_remember_name = grafana_remember
 
# disable gravatar profile images
;disable_gravatar = false
 
# data source proxy whitelist (ip_or_domain:port separated by spaces)
;data_source_proxy_whitelist =
 
# disable protection against brute force login attempts
;disable_brute_force_login_protection = false
 
#################################### Snapshots ###########################
[snapshots]
# snapshot sharing options
;external_enabled = true
;external_snapshot_url = https://snapshots-origin.raintank.io
;external_snapshot_name = Publish to snapshot.raintank.io
 
# remove expired snapshot
;snapshot_remove_expired = true
 
#################################### Dashboards History ##################
[dashboards]
# Number dashboard versions to keep (per dashboard). Default: 20, Minimum: 1
;versions_to_keep = 20
 
#################################### Users ###############################
[users]
# disable user signup / registration
;allow_sign_up = true
 
# Allow non admin users to create organizations
;allow_org_create = true
 
# Set to true to automatically assign new users to the default organization (id 1)
;auto_assign_org = true
 
# Default role new users will be automatically assigned (if disabled above is set to true)
;auto_assign_org_role = Viewer
 
# Background text for the user field on the login page
;login_hint = email or username
 
# Default UI theme ("dark" or "light")
;default_theme = dark
 
# External user management, these options affect the organization users view
;external_manage_link_url =
;external_manage_link_name =
;external_manage_info =
 
# Viewers can edit/inspect dashboard settings in the browser. But not save the dashboard.
;viewers_can_edit = false
 
[auth]
# Set to true to disable (hide) the login form, useful if you use OAuth, defaults to false
;disable_login_form = false
 
# Set to true to disable the signout link in the side menu. useful if you use auth.proxy, defaults to false
;disable_signout_menu = false
 
# URL to redirect the user to after sign out
;signout_redirect_url =
 
#################################### Anonymous Auth ##########################
[auth.anonymous]
# enable anonymous access
# Tachtler
# default: ;enabled = false
enabled = true
 
# specify organization name that should be used for unauthenticated users
;org_name = Main Org.
 
# specify role for unauthenticated users
;org_role = Viewer
 
#################################### Github Auth ##########################
[auth.github]
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = user:email,read:org
;auth_url = https://github.com/login/oauth/authorize
;token_url = https://github.com/login/oauth/access_token
;api_url = https://api.github.com/user
;team_ids =
;allowed_organizations =
 
#################################### Google Auth ##########################
[auth.google]
;enabled = false
;allow_sign_up = true
;client_id = some_client_id
;client_secret = some_client_secret
;scopes = https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email
;auth_url = https://accounts.google.com/o/oauth2/auth
;token_url = https://accounts.google.com/o/oauth2/token
;api_url = https://www.googleapis.com/oauth2/v1/userinfo
;allowed_domains =
 
#################################### Generic OAuth ##########################
[auth.generic_oauth]
;enabled = false
;name = OAuth
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = user:email,read:org
;auth_url = https://foo.bar/login/oauth/authorize
;token_url = https://foo.bar/login/oauth/access_token
;api_url = https://foo.bar/user
;team_ids =
;allowed_organizations =
;tls_skip_verify_insecure = false
;tls_client_cert =
;tls_client_key =
;tls_client_ca =
 
#################################### Grafana.com Auth ####################
[auth.grafana_com]
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = user:email
;allowed_organizations =
 
#################################### Auth Proxy ##########################
[auth.proxy]
;enabled = false
;header_name = X-WEBAUTH-USER
;header_property = username
;auto_sign_up = true
;ldap_sync_ttl = 60
;whitelist = 192.168.1.1, 192.168.2.1
 
#################################### Basic Auth ##########################
[auth.basic]
# Tachtler
# default: ;enabled = true
enabled = false
 
#################################### Auth LDAP ##########################
[auth.ldap]
;enabled = false
;config_file = /etc/grafana/ldap.toml
;allow_sign_up = true
 
#################################### SMTP / Emailing ##########################
[smtp]
;enabled = false
;host = localhost:25
;user =
# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;"""
;password =
;cert_file =
;key_file =
;skip_verify = false
;from_address = admin@grafana.localhost
;from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com
 
[emails]
;welcome_email_on_sign_up = false
 
#################################### Logging ##########################
[log]
# Either "console", "file", "syslog". Default is console and  file
# Use space to separate multiple modes, e.g. "console file"
;mode = console file
 
# Either "debug", "info", "warn", "error", "critical", default is "info"
;level = info
 
# optional settings to set different levels for specific loggers. Ex filters = sqlstore:debug
;filters =
 
# For "console" mode only
[log.console]
;level =
 
# log line format, valid options are text, console and json
;format = console
 
# For "file" mode only
[log.file]
;level =
 
# log line format, valid options are text, console and json
;format = text
 
# This enables automated log rotate(switch of following options), default is true
;log_rotate = true
 
# Max line number of single file, default is 1000000
;max_lines = 1000000
 
# Max size shift of single file, default is 28 means 1 << 28, 256MB
;max_size_shift = 28
 
# Segment log daily, default is true
;daily_rotate = true
 
# Expired days of log file(delete after max days), default is 7
;max_days = 7
 
[log.syslog]
;level =
 
# log line format, valid options are text, console and json
;format = text
 
# Syslog network type and address. This can be udp, tcp, or unix. If left blank, the default unix endpoints will be used.
;network =
;address =
 
# Syslog facility. user, daemon and local0 through local7 are valid.
;facility =
 
# Syslog tag. By default, the process' argv[0] is used.
;tag =
 
#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
;enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
;execute_alerts = true
 
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
;error_or_timeout = alerting
 
# Default setting for how Grafana handles nodata or null values in alerting. (alerting, no_data, keep_state, ok)
;nodata_or_nullvalues = no_data
 
# Alert notifications can include images, but rendering many images at the same time can overload the server
# This limit will protect the server from render overloading and make sure notifications are sent out quickly
;concurrent_render_limit = 5
 
#################################### Explore #############################
[explore]
# Enable the Explore section
;enabled = false
 
#################################### Internal Grafana Metrics ##########################
# Metrics available at HTTP API Url /metrics
[metrics]
# Disable / Enable internal metrics
;enabled           = true
 
# Publish interval
;interval_seconds  = 10
 
# Send internal metrics to Graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
;address =
;prefix = prod.grafana.%(instance_name)s.
 
#################################### Distributed tracing ############
[tracing.jaeger]
# Enable by setting the address sending traces to jaeger (ex localhost:6831)
;address = localhost:6831
# Tag that will always be included in when creating new spans. ex (tag1:value1,tag2:value2)
;always_included_tag = tag1:value1
# Type specifies the type of the sampler: const, probabilistic, rateLimiting, or remote
;sampler_type = const
# jaeger samplerconfig param
# for "const" sampler, 0 or 1 for always false/true respectively
# for "probabilistic" sampler, a probability between 0 and 1
# for "rateLimiting" sampler, the number of spans per second
# for "remote" sampler, param is the same as for "probabilistic"
# and indicates the initial sampling rate before the actual one
# is received from the mothership
;sampler_param = 1
 
#################################### Grafana.com integration  ##########################
# Url used to import dashboards directly from Grafana.com
[grafana_com]
;url = https://grafana.com
 
#################################### External image storage ##########################
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
# you can choose between (s3, webdav, gcs, azure_blob, local)
;provider =
 
[external_image_storage.s3]
;bucket =
;region =
;path =
;access_key =
;secret_key =
 
[external_image_storage.webdav]
;url =
;public_url =
;username =
;password =
 
[external_image_storage.gcs]
;key_file =
;bucket =
;path =
 
[external_image_storage.azure_blob]
;account_name =
;account_key =
;container_name =
 
[external_image_storage.local]
# does not require any configuration
 
[rendering]
# Options to configure external image rendering server like https://github.com/grafana/grafana-image-renderer
;server_url =
;callback_url =

Erklärung zu den vorhergehenden Anpassugnen:

Im Bereich [server] sollte eine Domäne für den Browser-Aufruf gesetzt werden.

Im Bereich [database] soll die Nutzung von MariaDB anstelle von SQLite als direktes Datenbank-Backend für Grafana selbst gesetzt werden.

Im Bereich [auth.anonymous] sollte für einen Zugriff aus der Web-Oberfläche von Icinga-Web ein anonymer Zugriff zugelassen werden.

Im Bereich [auth.basic] sollte für einen Zugriff aus der Web-Oberfläche von Icinga-Web ein anonymer Zugriff zugelassen werden.

Konfiguration: MariaDB

grafana: Datenbank

Nachfolgende SQL-Datei kann z.B. im Verzeichnis /tmp mit dem Namen

erstellt werden, um die Neuanlage einer Datenbank mit dem Namen grafana durchzuführen:

-- CREATE DATABASE grafana;
CREATE DATABASE grafana;

Zur Ausführung der SQL-Datei kann nachfolgender Befehl genutzt werden, welcher jedoch die Kenntnis des root-Passwort für die Datenbank voraussetzt!:

# /usr/bin/mysql -u root -p < create_database_grafana.sql 
Enter password:

* Das Erscheinen keiner Fehlermeldung, bedeutet die korrekte Ausführung des Befehls!

grafana: Benutzer/Rechte

Nachfolgende SQL-Datei kann z.B. im Verzeichnis /tmp mit dem Namen

erstellt werden, um einen Benutzer für die Datenbank grafana zu erstellen und diesen mit den benötigten rechten auszustatten:

-- Use database.
USE mysql;
 
-- Create new users.
CREATE USER 'grafanauser'@'192.168.0.110' IDENTIFIED BY 'geheim';
CREATE USER 'grafanauser'@'server11.idmz.tachtler.net' IDENTIFIED BY 'geheim';
 
-- Grant privileges for database graphite to new users.
GRANT ALL PRIVILEGES ON grafana.* TO 'grafanauser'@'192.168.0.110' IDENTIFIED BY 'geheim' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON grafana.* TO 'grafanauser'@'server11.idmz.tachtler.net' IDENTIFIED BY 'geheim' WITH GRANT OPTION;
 
-- Make sure that priviliges are reloaded.
FLUSH PRIVILEGES;

Zur Ausführung der SQL-Datei kann nachfolgender Befehl genutzt werden, welcher jedoch die Kenntnis des root-Passwort für die Datenbank voraussetzt!:

# /usr/bin/mysql -u root -p < create_users_for_remote_access_to_database_grafana.sql
Enter password:

* Das Erscheinen keiner Fehlermeldung, bedeutet die korrekte Ausführung des Befehls!

:!: HINWEIS - Die Einrichtung der Tabellen erfolgt zu einem späteren Installationsschritt!

grafana: Erster Start

Der Grafana-Server kann mit nachfolgendem Befehle gestartet werden:

# systemctl start grafana-server.service

Mit nachfolgendem Befehl kann der Status des Grafana-Servers abgefragt werden:

# systemctl status grafana-server.service
● grafana-server.service - Grafana instance
   Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2018-11-13 14:21:47 CET; 8s ago
     Docs: http://docs.grafana.org
 Main PID: 16687 (grafana-server)
   CGroup: /system.slice/grafana-server.service
           └─16687 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini...

Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net systemd[1]: Started Grafana instance.
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Nov 13 14:21:47 server11.idmz.tachtler.net grafana-server[16687]: t=2018-11-1...
Hint: Some lines were ellipsized, use -l to show in full.

icinga2: grafana

Bevor der Neustart von Icinga an dieser Stelle der Konfiguration durchgeführt werden soll, ist noch aktuell nachfolgendes inaktive Modul

mit nachfolgendem Befehl zu aktivieren:

# icingacli module enable grafana

grafana: Web-GUI

Zur Anmeldung an der Grafana-Web-GUI, muss diese im Browser wie folgt, durch Eingabe von nachfolgender URL aufgerufen werden:

Grafana - Sign in

Durch Auswahl des Symbols zur Anmeldung [Sign in], sollte nun nachfolgender Bildschirm erscheinen, in dem die Anmeldedaten eingegeben werden können:

Grafana - Erster Anmeldebildschirm

Durch Eingabe der Standard-Zugangsdaten:

sollte nachfolgender Dialog angezeigt werden, in dem das Passwort für den Standard-Benutzer abgeändert werden kann [Save], oder dieser Schritt bis zur nächsten Anmeldung übersprungen werden kann [Skip]:

Grafana - Erster Anmeldebildschirm - Aufforderung das Standard Passwort zu ändern

Egal, ob ein neues Passwort vergeben wird :!: Dringend empfohlen !!!, oder der Schritt übersprungen wird, sollte nach diesem Dialog nachfolgender Bildschirm erscheinen:

grafana: Add data source

Grafana - Home - Add data source

Nach der Auswahl von [Add data source] sollte nachfolgender Bildschirm erscheinen, in dem die Daten für den Zugriff auf die Graphite-Web-Seite erfasst und gespeichert werden müssen.

(Bildschirm-Seite 1)

Grafana - Home - Add data source - Seite 1

(Bildschirm-Seite 2)

Grafana - Home - Add data source - Seite 2

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
Name Graphite-icinga2
HTTP
URL [URL zur Graphite-Web-Seite]
Auth
Basic Auth (Falls z.B. ein .htaccess-Schutz besteht)
Basic Auth Details
User [Benutezname] (Falls z.B. ein .htaccess-Schutz besteht)
Password [Passwort] (Falls z.B. ein .htaccess-Schutz besteht)

Nach dem Bestätigen der Eingaben durch drücken der [Save & Test]-Schaltfläche, sollte nachfolgender Bildschirm erscheinen, wann alles funktioniert hat:

Grafana - Home - Add data source - Save & Test

grafana: Import dashboard

Nachfolgend sollen nun die „Dashboards“ für Icinga importiert werde.

Dazu können diese unter nachfolgendem externen Link heruntergeladen werden und beinhalten nachfolgende „Dashboards“:

Die nachfolgenden „Dashboards“ sollten mindestens importiert werden:

Nachfolgende das direkte herunterladen:

base-metrcis.json:

# wget -P /tmp https://raw.githubusercontent.com/Mikesch-mp/icingaweb2-module-grafana/master/dashboards/graphite/base-metrics.json
--2018-11-14 07:36:42--  https://raw.githubusercontent.com/Mikesch-mp/icingaweb2-module-grafana/master/dashboards/graphite/base-metrics.json
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.112.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.112.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 40730 (40K) [text/plain]
Saving to: ‘/tmp/base-metrics.json’

100%[======================================>] 40,730      --.-K/s   in 0.05s   

2018-11-14 07:36:42 (819 KB/s) - ‘/tmp/base-metrics.json’ saved [40730/40730]

icinga2-default.json:

# wget -P /tmp https://raw.githubusercontent.com/Mikesch-mp/icingaweb2-module-grafana/master/dashboards/graphite/icinga2-default.json
--2018-11-14 07:38:29--  https://raw.githubusercontent.com/Mikesch-mp/icingaweb2-module-grafana/master/dashboards/graphite/icinga2-default.json
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.112.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.112.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6204 (6.1K) [text/plain]
Saving to: ‘/tmp/icinga2-default.json’

100%[======================================>] 6,204       --.-K/s   in 0.002s  

2018-11-14 07:38:29 (2.42 MB/s) - ‘/tmp/icinga2-default.json’ saved [6204/6204]

Um die zuvor heruntergeladenen .json-Dateien nach Grafana importieren zu können, muss in der Grafana-Web-Oberfläche auf das [+]-Symbol und dort unter [Create] - [Import] ausgewählt werden, wie nachfolgende Bildschirmkopie zeigt:

Grafana - Create - Import

Anschliessend ist nachfolgender Import-Bildschirm zu sehen, über den die zuvor heruntergeladenen .json-Dateien nun importiert werden können, in dem die [Upload .json File] genutzt wird:

Grafana - Create - Import - Upload .json File

base-metrcis.json:

Grafana - Create - Import - Upload .json File - base-metrics.json

:!: HINWEIS - Wichtig ist hier bei Options - icinga2-graphite - Graphite-icinga2 auszuwählen!

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
Options
icinga2-graphite Graphite-icinga2

icinga2-default.json:

Grafana - Create - Import - Upload .json File - icinga2-default.json

:!: HINWEIS - Wichtig ist hier bei Options - Graphite - Graphite-icinga2 auszuwählen!

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
Options
Graphite Graphite-icinga2

:!: HINWEIS - Das importierte „Dashboard“ - icinga2-default.json muss noch angepasst werden !

Zur Anpassung des „Dashboars“ - icinga2-default.json ist dies Aufzurufen und unter dem [Zahnradsymbol/Settings] | [Variables] | [$hostname] sind nachfolgende Änderungen durchzuführen, wie der folgende Bildschirmausschnitt zeigt:

Grafana - Dashboard - icinga2-default - Settings - Variables - $hostname

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
General
Type Query
Hide [Leer]
Query Options
Data source Graphite-icinga2
Refresh On Dashboard Load
Query icinga2.*

Zum Abschluss ist hier die Schaltfläche [Update] zum Speichern der vorhergehenden Änderungen zu drücken.

Zur Anpassung des „Dashboars“ - icinga2-default.json ist dies Aufzurufen und unter dem [Zahnradsymbol/Settings] | [Variables] | [$service] sind nachfolgende Änderungen durchzuführen, wie der folgende Bildschirmausschnitt zeigt:

Grafana - Dashboard - icinga2-default - Settings - Variables - $service

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
General
Type Query
Hide [Leer]
Query Options
Data source Graphite-icinga2
Refresh On Dashboard Load
Query icinga2.$hostname*.*.*

Zum Abschluss ist hier die Schaltfläche [Update] zum Speichern der vorhergehenden Änderungen zu drücken.

Zur Anpassung des „Dashboars“ - icinga2-default.json ist dies Aufzurufen und unter dem [Zahnradsymbol/Settings] | [Variables] | [$command] sind nachfolgende Änderungen durchzuführen, wie der folgende Bildschirmausschnitt zeigt:

Grafana - Dashboard - icinga2-default - Settings - Variables - $command

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
General
Type Query
Hide [Leer]
Query Options
Data source Graphite-icinga2
Refresh On Dashboard Load
Query icinga2.$hostname*.*.$service.*

Zum Abschluss ist hier die Schaltfläche [Update] zum Speichern der vorhergehenden Änderungen zu drücken.

:!: HINWEIS - Zum Abschluss der kompletten Änderungen ist die Schaltfläche [Save] zu drücken !!!

grafana: Panel: hostalive

Damit auch die Anzeige des „hostalive“ innerhalb von Icinga durch Grafana durchgeführt werden kann, sind nachfolgende Konfigurationen in Grafana erforderlich, da dies nicht durch das icinga2-default-Panel abgedeckt wird.

Die Einfachste Variante ist, aus dem „Dashboard“ - base-metrcis das Panel „Hostalive“ in das „Dashboard“ - icinga2-default herüber zu kopieren.

Um dies zu tun, ist es erforderlich auf das „Dashboard“ - base-metrcis zu wechseln und dort auf das „Panel“ - Hostalive zu gehen, um mit den [Menüpunkten] | [More…] | [Copy] das „Panel“ - Hostalive zu kopieren, wie nachfolgende Bildschirmkopie zeigt:

Grafana - Dashboard: base-metric - Hostalive - More - Copy

Anschliessend muss ein Wechsel auf das „Dashboard“ - icinga2-default durchgeführt werden und die [Schaltfläche] mit dem Graphen-Symbol - [Add Panel] gedrückt werden, wie ebenfalls nachfolgende Bildschirmkopie zeigt:

Grafana - Dashboard: icinga2-default - Add Panel

In dem sich nun öffnenden Dialog, ist der Reiter [Paste] auszuwählen und die [Schaltfläche] mit dem grösseren Graphen-Symbol - [Hostalive] zu drücken, wie nachfolgend auf der Bildschirmkopie zu sehen ist:

Grafana - Dashboard: icinga2-default - Paste - Hostalive

Anschliessend kann das Panel wie folgt noch angepasst werden, in dem der [Menüpunkt] [Edit] aufgerufen wird, wie auf nachfolgender Bildschirmkopie dargestellt:

Grafana - Dashboard: icinga2-default - Hostalive - Edit

Hier können nun die individuellen Anpassungen durchgeführt werden, z.B. den Namen des „Panel“ in komplette Kleinschrift ändern. Zum Abschluss sollte das Symbol mit der Diskette - [Save dashboard] bedrückt werden, wie ebenfalls nachfolgende Bildschirmkopie zeigt:

Grafana - Dashboard: icinga2-default - Save dashboard

Bevor, oder beim verlassen das aktuellen „Dashboard“ - icinga2-default, ist es noch zwingend erforderlich die getroffenen Änderungen zu speichern, was im aufkommenden Dialog „Unsaved changes“ mit dem drücken der Schaltfläche [Save] abschliessen durchgeführt werden muss, wie nachfolgende Bildschirmkopie zeigt:

Grafana - Unsaved changes - Save

Bevor es an die Einbindung des neuen „Panels“ in Icinga geht, müsen wir noch die Panel-ID in Erfahrung bringen. Dazu kann im „Panel“ - hostalive - das [Menü] aufgrufen werden und die Schalfläche [Share] ausgewählt werden, in der und die URL die „Panel-ID“ preis gibt, wie nachfolgende Bildschirmkopie verdeutlicht:

Grafana - Share - Panel-ID

* Quelle: Externer Link: Icinga Web 2 und icingaweb2-module-grafana von Marianne M. Spiller

icingaweb2: Grafana (Setup)

Nach der erfolgreichen Inbetriebnahme des Graphite-carbon-Server, des Icinga-Servers und des Icinga-Web, kann nun die Web-Anwendung aufgerufen werden und die Konfiguration und Aktivierung von Grafana durchgeführt werden.

Bevor die Konfiguration von Grafana durchgeführt werden kann, ist es erforderlich sich über die Icinga-Web-Anwendung anzumelden.

Icinga Web 2 - Anmeldung

Nach erfolgreicher Anmeldung an der Icinga-Web-Anwendung ist der Menüpunkt: Konfiguration | Module auszuwählen, wonach nachfolgende Ansicht zur Anzeige kommen sollte:

Icinga2 Web - Konfiguration - Module

Durch die Auswahl des Module | grafana werden weitere Konfigurationen zum Modul grafana angezeigt, darunter auch den Reiter: Configuration:

Icinga2 Web - Konfiguration - Module - Grafana - Configuration

Nach erfolgreicher Bearbeitung des Reiters Configuration und Speicher von dieser mit der Schaltfläche [Save Changes], sollte sich die Anzeige wie folgt verändert haben:

(Bildschirm-Seite 1) Icinga2 Web - Konfiguration - Module - Grafana - Configuration - Seite 1

:!: HINWEIS - Möglicherweise muss ab Grafana Version 7.x der Proxy Timeout auf 10 Sek. erhöht werden!

(Bildschirm-Seite 2) Icinga2 Web - Konfiguration - Module - Grafana - Configuration - Seite 2

Der Wert für Default dashboard UID kann durch einen kleinen Trick ermittelt werden, in dem auf dem entsprechendem „Dashboard“ beim entsprechendem „Graphen“ die Funktion [Share] aufgerufen wird, somit kann aus der dort enthaltenen und angezeigten URL die Default dashboard UID herausgelesen werden. Siehe auch nachfolgende Bildschirmkopie:

Grafana - Dashboard - Graph - Share - Default dashboard UID

* Quelle: Externer Link: Icinga Web 2 und icingaweb2-module-grafana von Marianne M. Spiller

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
Use Grafana v5
Host [URL zu Grafana]
Protocol [http oder https]
Default dashboard UID :!: hier: gilKAKfsp
Satasource Type Graphite
Grafana access Proxy
Enable Link Ja

Grafana ist nun konfiguriert!

Eine mögliche Ausgabe eines Grafana Graphen innerhalb der Icinga-Web-Anwendung könnte dann wie folgt aussehen:

Icinga2 - Grfana - Load

icingaweb2: Add New Grafana Graph: hostalive

Nachdem unter nachfolgendem internen Link ein weiteres „Panel“ mit der Bezeichnung hostalive in Grafana auf dem „Dashboard“ - icinga2-default erstellt wurden

muss dieses „Panel“ nun noch in der Icinga-Web-Anwendung eingebunden werden.

In der Icinga-Web-Anwendung muss nun der [Menüpunkt] | [Konfiguration] | [Grafana Graphs] aufgerufen werden und der Link [Add New Grafana Graph] angeklickt werden, wie nachfolgende Bildschirmkopie zeigt:

Icinga2 - Konfiguration - Grafana Graph - Add New Grafana Graph

Anschliessend sind die benötigten Eingaben durchzuführen, wie nachfolgende Bildschirmkopie zeigt:

Icinga2 - Konfiguration - Grafana Graph - Add New Grafana Graph - hostalive

Nachfolgende Tabelle zeigt, welche Daten erfasst werden müssen:

Eintrag Wert
Name hostalive
Dashboard name icinga2-default
Dashboard UID :!: hier: gilKAKfsp
PanelId(s) :!: hier: 3
OrgqanuzationId :!: hier: 1
Graph height 280
Graph width 920

Eine mögliche Ausgabe eines Grafana Graphen für „hostalive“ innerhalb der Icinga-Web-Anwendung könnte dann wie folgt aussehen:

Icinga2 - Grfana - hostalive