Ver código fonte

Cleanup of config.sample.js, removed graphiteUrl setting, it will still work for next release

Torkel Ödegaard 11 anos atrás
pai
commit
f3698cd625
4 arquivos alterados com 52 adições e 68 exclusões
  1. 2 0
      CHANGELOG.md
  2. 6 1
      src/app/components/settings.js
  3. 1 6
      src/app/services/dashboard.js
  4. 43 61
      src/config.sample.js

+ 2 - 0
CHANGELOG.md

@@ -21,6 +21,8 @@
 - Add panel icon and Row edit button is replaced by the Row edit menu (Issue #475)
 - New graphs now have a default empty query
 - Add Row button now creates a row with default height of 250px (no longer opens dashboard settings modal)
+- Clean up of config.sample.js, graphiteUrl removed (still works, but depricated, removed in future)
+  Use datasources config instead. panel_names removed from config.js. Use plugins.panels to add custom panels
 
 #### Fixes
 - Filter option loading when having muliple nested filters now works better.

+ 6 - 1
src/app/components/settings.js

@@ -20,7 +20,8 @@ function (_, crypto) {
           default: true
         }
       },
-      panel_names                   : [],
+      panels                        : ['graph', 'text'],
+      plugins                       : {},
       default_route                 : '/dashboard/file/default.json',
       grafana_index                 : 'grafana-dash',
       elasticsearch_all_disabled    : false,
@@ -76,6 +77,10 @@ function (_, crypto) {
     settings.elasticsearchBasicAuth = elasticParsed.basicAuth;
     settings.elasticsearch = elasticParsed.url;
 
+    if (settings.plugins.panels) {
+      settings.panels = _.union(settings.panels, settings.plugins.panels);
+    }
+
     return settings;
   };
 });

+ 1 - 6
src/app/services/dashboard.js

@@ -167,12 +167,7 @@ function (angular, $, kbn, _, config, moment, Modernizr) {
         self.set_interval(dashboard.refresh);
       }
 
-      // Set the available panels for the "Add Panel" drop down
-      self.availablePanels = _.difference(config.panel_names,
-        _.pluck(_.union(self.current.nav,self.current.pulldowns),'type'));
-
-      // Take out any that we're not allowed to add from the gui.
-      self.availablePanels = _.difference(self.availablePanels,config.hidden_panels);
+      self.availablePanels = config.panels;
 
       $rootScope.$emit('dashboard-loaded', self.current);
 

+ 43 - 61
src/config.sample.js

@@ -1,82 +1,64 @@
-/** @scratch /configuration/config.js/1
- * == Configuration
- * config.js is where you will find the core Grafana configuration. This file contains parameter that
- * must be set before Grafana is run for the first time.
- */
+///// @scratch /configuration/config.js/1
+ // == Configuration
+ // config.js is where you will find the core Grafana configuration. This file contains parameter that
+ // must be set before Grafana is run for the first time.
+ ///
 define(['settings'],
 function (Settings) {
   "use strict";
 
   return new Settings({
 
-    /**
-     * elasticsearch url:
-     * For Basic authentication use: http://username:password@domain.com:9200
-     */
-    elasticsearch: "http://"+window.location.hostname+":9200",
-
-    /**
-     * graphite-web url:
-     * For Basic authentication use: http://username:password@domain.com
-     * Basic authentication requires special HTTP headers to be configured
-     * in nginx or apache for cross origin domain sharing to work (CORS).
-     * Check install documentation on github
-     */
-    graphiteUrl: "http://"+window.location.hostname+":8080",
-
-    /**
-     * Multiple graphite servers? Comment out graphiteUrl and replace with something like this:
-
-      datasources: {
-        data_center_us: {
-          type: 'graphite',
-          url: 'http://<graphite_url>',
-          default: true
-        },
-        data_center_eu: {
-          type: 'graphite',
-          url: 'http://<graphite_url>',
-          render_method: 'GET' // optional, use this to change render calls from POST to GET
-        }
+    // datasources, you can add multiple
+    datasources: {
+      graphite: {
+        type: 'graphite',
+        url: "http://my.graphite.server.com:8080",
+        default: true
+      },
+      influxdb: {
+        type: 'influxdb',
+        url: "http://my_influxdb_server:8080/db/database_name",
+        user: 'admin',
+        password: 'admin'
       },
+    },
 
-     */
+    // elasticsearch url
+    // used for storing and loading dashboards, optional
+    // For Basic authentication use: http://username:password@domain.com:9200
+    elasticsearch: "http://"+window.location.hostname+":9200",
 
+    // default start dashboard
     default_route: '/dashboard/file/default.json',
 
-    /**
-     * If you experiance problems with zoom, it is probably caused by timezone diff between
-     * your browser and the graphite-web application. timezoneOffset setting can be used to have Grafana
-     * translate absolute time ranges to the graphite-web timezone.
-     * Example:
-     *   If TIME_ZONE in graphite-web config file local_settings.py is set to America/New_York, then set
-     *   timezoneOffset to "-0500" (for UTC - 5 hours)
-     * Example:
-     *   If TIME_ZONE is set to UTC, set this to "0000"
-     */
-
+    // timezoneOFfset:
+    // If you experiance problems with zoom, it is probably caused by timezone diff between
+    // your browser and the graphite-web application. timezoneOffset setting can be used to have Grafana
+    // translate absolute time ranges to the graphite-web timezone.
+    // Example:
+    //   If TIME_ZONE in graphite-web config file local_settings.py is set to America/New_York, then set
+    //   timezoneOffset to "-0500" (for UTC - 5 hours)
+    // Example:
+    //   If TIME_ZONE is set to UTC, set this to "0000"
+    //
     timezoneOffset: null,
 
-    /**
-     * Elasticsearch index for storing dashboards
-     *
-     */
+    // Elasticsearch index for storing dashboards
     grafana_index: "grafana-dash",
 
-    /**
-     * set to false to disable unsaved changes warning
-     */
+    // set to false to disable unsaved changes warning
     unsaved_changes_warning: true,
 
-    /**
-     * set the default timespan for the playlist feature
-     * Example: "1m", "1h"
-     */
+    // set the default timespan for the playlist feature
+    // Example: "1m", "1h"
     playlist_timespan: "1m",
 
-    panel_names: [
-      'text',
-      'graph'
-    ]
+
+    // Add your own custom pannels
+    plugins: {
+      panels: []
+    }
+
   });
 });