fix: Added support for Graylog 2.1 API change (#4411)

This commit is contained in:
Neil Lathwood
2016-09-14 04:23:52 +01:00
committed by Tony Murray
parent 2529109fc4
commit e8b5c7fe66
2 changed files with 20 additions and 3 deletions

View File

@@ -11,8 +11,17 @@ standalone appliance.
Config is simple, here's an example: Config is simple, here's an example:
```php ```php
$config['graylog']['server'] = 'http://127.0.0.1'; $config['graylog']['server'] = 'http://127.0.0.1';
$config['graylog']['port'] = 12900; $config['graylog']['port'] = 12900;
$config['graylog']['username'] = 'admin'; $config['graylog']['username'] = 'admin';
$config['graylog']['password'] = 'admin'; $config['graylog']['password'] = 'admin';
$config['graylog']['version'] = '2.1';
``` ```
> Since Graylog 2.1, the default API path is /api/
If you are running a version earlier than Graylog then please set `$config['graylog']['version']` to the version
number of your Graylog install.
If you have altered the default uri for your Graylog setup then you can override the default of `/api/` using
`$config['graylog']['base_uri'] = '/somepath/';`

View File

@@ -42,7 +42,15 @@ if (!empty($filter_hostname)) {
} }
} }
$graylog_url = $config['graylog']['server'] . ':' . $config['graylog']['port'] . '/search/universal/relative?query=' . urlencode($query) . '&range='. $filter_range . $extra_query; if (isset($config['graylog']['base_uri'])) {
$graylog_base = $config['graylog']['base_uri'];
} elseif (version_compare($config['graylog']['version'], '2.1', '>=')) {
$graylog_base = '/api/search/universal/relative';
} else {
$graylog_base = '/search/universal/relative';
}
$graylog_url = $config['graylog']['server'] . ':' . $config['graylog']['port'] . $graylog_base . '?query=' . urlencode($query) . '&range='. $filter_range . $extra_query;
$context = stream_context_create(array( $context = stream_context_create(array(
'http' => array( 'http' => array(