loadDir( Icinga::app() ->getModuleManager() ->getModule('graphite') ->getBaseDir() . DIRECTORY_SEPARATOR . 'templates' ); $path = Config::resolvePath('modules/graphite/templates'); if (file_exists($path)) { $allTemplates->loadDir($path); } static::$allTemplates = $allTemplates; } return static::$allTemplates; } /** * Get metrics data source * * @return MetricsDataSource * * @throws ConfigurationError */ public static function getMetricsDataSource() { if (static::$metricsDataSource === null) { $config = Config::module('graphite'); $graphite = $config->getSection('graphite'); if (! isset($graphite->url)) { throw new ConfigurationError('Missing "graphite.url" in "%s"', $config->getConfigFile()); } static::$metricsDataSource = new MetricsDataSource( (new GraphiteWebClient(Url::fromPath($graphite->url, [], new FakeSchemeRequest()))) ->setUser($graphite->user) ->setPassword($graphite->password) ->setInsecure($graphite->insecure) ); } return static::$metricsDataSource; } }