graylog-api

Node.js module for Graylog2 API

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
graylog-api
1721.2.05 years ago8 years agoMinified + gzip package size for graylog-api in KB

Readme

graylog-api
Node.js module for Graylog2 API.
All methods of this module compatitible with Graylog API v1.1.4 (59783f6). Search syntax look here: The search query language. For more detail you can look Graylog REST API browser: localhost:12900/api-browser.

Quick examples

var graylog = require('graylog-api');
var api = graylog.connect({
  basicAuth: {
    username: 'admin',
    password: 'secret'
  }, // Optional. Default: null. Basic access authentication
  protocol: 'https', // Optional. Default: 'http'. Connection protocol
  host: 'example.com', // Optional. Default: 'localhost'. API hostname
  port: '12900', // Optional. Default: '12900'. API port
  path: '/api' // Optional. Default: ''. API Path
});

api.searchAbsolute({ // parameters
  query: 'source:apache',
  from: '2015-07-24T00:00:00.000Z',
  to: '2015-07-25T00:00:00.000Z',
  limit: '10',
  fields: 'message,timestamp',
  sort: 'asc'
}, function(err, data) { // callback
  if (err) {
    console.log(err);
  } else {
    console.log(data);
  }
});

updateUserPassword({ // parameters
  old_password: 'secret',
  password: 'qwerty123'
}, { // path
  username: 'admin'
}, function (err, data) { // callback
  if (err) {
    console.log(err);
  } else {
    console.log(data);
  }
});

api.getSystem(function(err, data) {  // only callback
  if (!err) {
    console.log(data);
  }
});

Download

The source is available for download from GitHub. Alternatively, you can install using Node Package Manager (npm):
npm install graylog-api

Documentation

API object expression has the same this syntax:
api.[methodName]([parameters][, path][, callback]);

  • methodName - The method name
  • parameters - Object of method to be passed to the API server
  • path - Optional object of method to be replace path variables
  • callback - Optional function to be call it after receive api data. First argument is object of error (null if no errors), second - data

Methods

AlarmCallbacks: Manage stream alarm callbacks

AlertConditions: Manage stream alert conditions

AlertReceivers: Manage stream alert receivers

Alerts: Manage stream alerts

Counts: Message counts

Dashboards: Manage dashboards

Extractors: Extractors of an input

Filters: Message blacklist filters

Indexer/Cluster: Indexer cluster information

Indexer/Failures: Indexer failures

Indexer/Indices: Index information

Messages: Single messages

Search/Absolute: Message search

Search/Keyword: Message search

Search/Relative: Message search

Search/Saved: Saved searches

Sources: Listing message sources (e.g. hosts sending logs)

StaticFields: Static fields of an input

StreamOutputs: Manage stream outputs for a given stream

StreamRules: Manage stream rules

Streams: Manage streams

System: System information of this node

System/Buffers: Buffer information of this node.

System/Bundles: Content packs

System/Cluster: Node discovery

System/ClusterStats: Cluster stats

System/Collectors: Management of Graylog Collectors

System/Collectors/Registration: Registration resource for Graylog Collector nodes

System/Debug/Events: For debugging local and cluster events.

System/Deflector: Index deflector management

System/Fields: Get list of message fields that exist.

System/Grok: Manage grok patterns

System/IndexRanges: Index timeranges

System/Inputs: Message inputs of this node

System/Inputs/Types: Message input types of this node

System/Jobs: System Jobs

System/Journal: Message journal information of this node.

System/LDAP: LDAP settings

System/LoadBalancers: Status propagation for load balancers

System/Loggers: Internal Graylog loggers

System/Messages: Internal Graylog messages

System/Metrics: Internal Graylog2 metrics

System/Metrics/History: Get history of metrics

System/Notifications: Notifications generated by the system

System/Outputs: Manage outputs

System/Permissions: Retrieval of system permissions

System/Plugin: Plugin information

System/Processing: System processing status control

System/Radios: Management of graylog2-radio nodes

System/ServiceManager: ServiceManager Status

System/Sessions: Login for interactive user sessions

System/Shutdown: Shutdown this node gracefully

System/Stats: Node system stats

System/Throughput: Message throughput of this node

Users: User accounts

AlarmCallbacks: Manage stream alarm callbacks

getAlarmCallbacks(parameters, path, callback)

Get a list of all alarm callbacks for this stream
Arguments: parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose alarm callbacks we want
callback: {Function} Optional. Callback function

createAlarmCallback(parameters, path, callback)

Create an alarm callback
Arguments:
parameters: {Object} {CreateAlarmCallbackRequest} path: {Object}
* __streamid__: {String} The stream id this new alarm callback belongs to
callback: {Function} Optional. Callback function

getAlarmCallbacksAvailable(parameters, path, callback)

Get a list of all alarm callback types
Arguments: parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose alarm callbacks we want
callback: {Function} Optional. Callback function

getAlarmCallback(parameters, path, callback)

Get a single specified alarm callback for this stream
Arguments:
parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose alarm callbacks we want
* __alarmCallbackId__: {String} The alarm callback id we are getting
callback: {Function} Optional. Callback function

updateAlarmCallback(parameters, path, callback)

Update an alarm callback
Arguments: parameters: {Object} {Map} path: {Object}
* __streamid__: {String} The stream id this alarm callback belongs to
* __alarmCallbackId__: {String}
callback: {Function} Optional. Callback function

removeAlarmCallback(parameters, path, callback)

Delete an alarm callback
Arguments:
parameters: {null} path: {Object}
* __streamid__: {String} The stream id this alarm callback belongs to
* __alarmCallbackId__: {String}
callback: {Function} Optional. Callback function

AlertConditions: Manage stream alert conditions

createAlertCondition(parameters, path, callback)

Create an alert condition
Arguments: parameters: {Object} {CreateConditionRequest} path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

getAlertConditions(parameters, path, callback)

Get all alert conditions of this stream
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

updateAlertCondition(parameters, path, callback)

Modify an alert condition
Arguments: parameters: {Object} {CreateConditionRequest} path: {Object}
* __streamId__: {String} The stream id the alert condition belongs to
* __conditionId__: {String} The alert condition id
callback: {Function} Optional. Callback function

removeAlertCondition(parameters, path, callback)

Delete an alert condition
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
* __conditionId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

AlertReceivers: Manage stream alert receivers

getAlerts(parameters, path, callback)

Get the 300 most recent alarms of this stream
Arguments: parameters: {Object}
* _since_: {Integer} Optional. Optional parameter to define a lower date boundary. (UNIX timestamp)
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

getAlertsCheck(parameters, path, callback)

Check for triggered alert conditions of this streams. Results cached for 30 seconds
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String} The ID of the stream to check
callback: {Function} Optional. Callback function

createAlertReceiver(parameters, path, callback)

Add an alert receiver
Arguments: parameters: {Object}
* __entity__: {String} Name/ID of user or email address to add as alert receiver
* __type__: {String} Type: users or emails
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

removeAlertReceiver(parameters, path, callback)

Remove an alert receiver
Arguments:
parameters: {Object}
* __type__: {String} Type: users or emails
* __entity__: {String} Name/ID of user or email address to remove from alert receivers
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

testAlertSendDummy(parameters, path, callback)

Send a test mail for a given stream
Arguments: parameters: {null} path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

Alerts: Manage stream alerts

getAlerts(parameters, path, callback)

Get the 300 most recent alarms of this stream
Arguments:
parameters: {Object}
* _since_: {Integer} Optional. Optional parameter to define a lower date boundary. (UNIX timestamp)
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

getAlertsCheck(parameters, path, callback)

Check for triggered alert conditions of this streams. Results cached for 30 seconds
Arguments: parameters: {null} path: {Object}
* __streamId__: {String} The ID of the stream to check
callback: {Function} Optional. Callback function

createAlertReceiver(parameters, path, callback)

Add an alert receiver
Arguments:
parameters: {Object}
* __type__: {String} Type: users or emails
* __entity__: {String} Name/ID of user or email address to add as alert receiver
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

removeAlertReceiver(parameters, path, callback)

Remove an alert receiver
Arguments: parameters: {Object}
* __type__: {String} Type: users or emails
* __entity__: {String} Name/ID of user or email address to remove from alert receivers
path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

testAlertSendDummy(parameters, path, callback)

Send a test mail for a given stream
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String} The stream id this new alert condition belongs to
callback: {Function} Optional. Callback function

Counts: Message counts

getCountTotal(callback)

Total number of messages in all your indices
Arguments: callback: {Function} Optional. Callback function

Dashboards: Manage dashboards

createDashboard(parameters, callback)

Create a dashboard
Arguments:
parameters: {Object} {CreateDashboardRequest} callback: {Function} Optional. Callback function

getDashboards(callback)

Get a list of all dashboards and all configurations of their widgets
Arguments:
callback: {Function} Optional. Callback function

getDashboard(parameters, path, callback)

Get a single dashboards and all configurations of its widgets
Arguments: parameters: {null} path: {Object}
* __dashboardId__: {String}
callback: {Function} Optional. Callback function

updateDashboard(parameters, path, callback)

Update the settings of a dashboard
Arguments:
parameters: {Object} {UpdateDashboardRequest} path: {Object}
* __dashboardId__: {String}
callback: {Function} Optional. Callback function

removeDashboard(parameters, path, callback)

Delete a dashboard and all its widgets
Arguments: parameters: {null} path: {Object}
* __dashboardId__: {String}
callback: {Function} Optional. Callback function

updateDashboardPositions(parameters, path, callback)

Update/set the positions of dashboard widgets
Arguments:
parameters: {Object} {WidgetPositionsRequest} path: {Object}
* __dashboardId__: {String}
callback: {Function} Optional. Callback function

createDashboardWidget(parameters, path, callback)

Add a widget to a dashboard
Arguments: parameters: {Object} {AddWidgetRequest} path: {Object}
* __dashboardId__: {String}
callback: {Function} Optional. Callback function

updateDashboardWidget(parameters, path, callback)

Update a widget
Arguments:
parameters: {Object} {AddWidgetRequest} path: {Object}
* __dashboardId__: {String}
* __widgetId__: {String}
callback: {Function} Optional. Callback function

removeDashboardWidget(parameters, path, callback)

Delete a widget
Arguments: parameters: {null} path: {Object}
* __dashboardId__: {String}
* __widgetId__: {String}
callback: {Function} Optional. Callback function

updateDashboardWidgetCacheTime(parameters, path, callback)

Update cache time of a widget
Arguments:
parameters: {Object} {UpdateWidgetRequest} path: {Object}
* __dashboardId__: {String}
* __widgetId__: {String}
callback: {Function} Optional. Callback function

updateDashboardWidgetDescription(parameters, path, callback)

Update description of a widget
Arguments: parameters: {Object} {UpdateWidgetRequest} path: {Object}
* __dashboardId__: {String}
* __widgetId__: {String}
callback: {Function} Optional. Callback function

getDashboardWidgetValue(parameters, path, callback)

Get a single widget value
Arguments:
parameters: {null} path: {Object}
* __dashboardId__: {String}
* __widgetId__: {String}
callback: {Function} Optional. Callback function

Extractors: Extractors of an input

createInputExtractor(parameters, path, callback)

Add an extractor to an input
Arguments: parameters: {Object} {CreateExtractorRequest} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

getInputExtractors(parameters, path, callback)

List all extractors of an input
Arguments:
parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

updateInputExtractorOrder(parameters, path, callback)

Update extractor order of an input
Arguments: parameters: {Object} {OrderExtractorsRequest} path: {Object}
* __inputId__: {String} Persist ID (!) of input
callback: {Function} Optional. Callback function

updateInputExtractor(parameters, path, callback)

Update an extractor
Arguments:
parameters: {Object} {CreateExtractorRequest} path: {Object}
* __inputId__: {String}
* __extractorId__: {String}
callback: {Function} Optional. Callback function

removeInputExtractor(parameters, path, callback)

Delete an extractor
Arguments: parameters: {null} path: {Object}
* __inputId__: {String}
* __extractorId__: {String}
callback: {Function} Optional. Callback function

getInputExtractor(parameters, path, callback)

Get information of a single extractor of an input
Arguments:
parameters: {null} path: {Object}
* __inputId__: {String}
* __extractorId__: {String}
callback: {Function} Optional. Callback function

Filters: Message blacklist filters

createBlacklistFilter(parameters, callback)

Create a blacklist filter
It can take up to a second until the change is applied
Arguments: parameters: {Object}
* __filterEntry__: {FilterDescription}
callback: {Function} Optional. Callback function

getBlacklistFilters(callback)

Get all blacklist filters
Arguments: callback: {Function} Optional. Callback function

getBlacklistFilter(parameters, path, callback)

Get the existing blacklist filter
Arguments:
parameters: {null} path: {Object}
* __filterId__: {String}
callback: {Function} Optional. Callback function

updateBlacklistFilter(parameters, path, callback)

Update an existing blacklist filter
It can take up to a second until the change is applied
Arguments: parameters: {Object}
* __filterEntry__: {FilterDescription}
path: {Object}
* __filterId__: {String}
callback: {Function} Optional. Callback function

removeBlacklistFilter(parameters, path, callback)

Remove the existing blacklist filter
It can take up to a second until the change is applied
Arguments:
parameters: {null} path: {Object}
* __filterId__: {String}
callback: {Function} Optional. Callback function

Indexer/Cluster: Indexer cluster information

getClusterHealth(callback)

Get cluster and shard health overview
Arguments: callback: {Function} Optional. Callback function

getClusterName(callback)

Get the cluster name
Arguments:
callback: {Function} Optional. Callback function

Indexer/Failures: Indexer failures

getSystemFailures(parameters, callback)

Get a list of failed index operations
Arguments: parameters: {Object}
* __limit__: {Integer} Limit
* __offset__: {Integer} Offset
callback: {Function} Optional. Callback function

getFailuresCount(parameters, callback)

Total count of failed index operations since the given date
Arguments: parameters: {Object}
* __since__: {String} ISO8601 date
callback: {Function} Optional. Callback function

Indexer/Indices: Index information

getIndicesClosed(callback)

Get a list of closed indices that can be reopened
Arguments: callback: {Function} Optional. Callback function

getIndicesReopened(callback)

Get a list of reopened indices, which will not be cleaned by retention cleaning
Arguments:
callback: {Function} Optional. Callback function

removeIndex(parameters, path, callback)

Delete an index. This will also trigger an index ranges rebuild job
Arguments: parameters: {null} path: {Object}
* _index_: {String} Optional.
callback: {Function} Optional. Callback function

getIndices(parameters, path, callback)

Get information of an index and its shards
Arguments:
parameters: {null} path: {Object}
* _index_: {String} Optional.
callback: {Function} Optional. Callback function

closeIndex(parameters, path, callback)

Close an index. This will also trigger an index ranges rebuild job
Arguments: parameters: {null} path: {Object}
* _index_: {String} Optional.
callback: {Function} Optional. Callback function

reopenIndex(parameters, path, callback)

Reopen a closed index. This will also trigger an index ranges rebuild job
Arguments:
parameters: {null} path: {Object}
* _index_: {String} Optional.
callback: {Function} Optional. Callback function

Messages: Single messages

analyzeMessage(parameters, path, callback)

Analyze a message string
Returns what tokens/terms a message string (message or fullmessage) is split to
Arguments: parameters: {Object}
* __string__: {String} The string to analyze
path: {Object}
* __index__: {String} The index the message containing the string is stored in
callback: {Function} Optional. Callback function

getMessage(parameters, path, callback)

Get a single message
Arguments:
parameters: {null} path: {Object}
* __index__: {String} The index this message is stored in
* __messageId__: {String}
callback: {Function} Optional. Callback function

Search/Absolute: Message search

searchAbsolute(parameters, callback)

Message search with absolute timerange
Search for messages using an absolute timerange, specified as from/to with format yyyy-MM-ddTHH:mm:ss.SSSZ (e.g. 2014-01-23T15:34:49.000Z) or yyyy-MM-dd HH:mm:ss
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __from__: {String} Timerange start. See description for date format
* __to__: {String} Timerange end. See description for date format
* _limit_: {Integer} Optional. Maximum number of messages to return
* _offset_: {Integer} Optional. Offset
* _filter_: {String} Optional. Filter
* __fields__: {String} Comma separated list of fields to return
callback: {Function} Optional. Callback function

searchAbsoluteFieldHistogram(parameters, callback)

Field value histogram of a query using an absolute timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __field__: {String} Field of whose values to get the histogram of
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __from__: {String} Timerange start. See search method description for date format
* __to__: {String} Timerange end. See search method description for date format
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchAbsoluteHistogram(parameters, callback)

Datetime histogram of a query using an absolute timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __from__: {String} Timerange start. See search method description for date format
* __to__: {String} Timerange end. See search method description for date format
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchAbsoluteStats(parameters, callback)

Field statistics for a query using an absolute timerange
Returns statistics like min/max or standard deviation of numeric fields over the whole query result set
Arguments: parameters: {Object}
* __field__: {String} Message field of numeric type to return statistics for
* __query__: {String} Query (Lucene syntax)
* __from__: {String} Timerange start. See search method description for date format
* __to__: {String} Timerange end. See search method description for date format
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchAbsoluteTerms(parameters, callback)

Most common field terms of a query using an absolute timerange
Arguments: parameters: {Object}
* __field__: {String} Message field of to return terms of
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __from__: {String} Timerange start. See search method description for date format
* __to__: {String} Timerange end. See search method description for date format
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchAbsoluteTermsStats(parameters, callback)

Ordered field terms of a query computed on another field using an absolute timerange
Arguments: parameters: {Object}
* __key_field__: {String} Message field of to return terms of
* __value_field__: {String} Value field used for computation
* __order__: {String} What to order on (Allowed values: TERM, REVERSE_TERM, COUNT, REVERSE_COUNT, TOTAL, REVERSE_TOTAL, MIN, REVERSE_MIN, MAX, REVERSE_MAX, MEAN, REVERSE_MEAN)
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __from__: {String} Timerange start. See search method description for date format
* __to__: {String} Timerange end. See search method description for date format
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

Search/Keyword: Message search

searchKeyword(parameters, callback)

Message search with keyword as timerange
Search for messages in a timerange defined by a keyword like "yesterday" or "2 weeks ago to wednesday"
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __keyword__: {String} Range keyword
* _limit_: {Integer} Optional. Maximum number of messages to return
* _offset_: {Integer} Optional. Offset
* _filter_: {String} Optional. Filter
* _fields_: {String} Optional. Comma separated list of fields to return
* _sort_: {String} Optional. Sorting (field:asc / field:desc)
callback: {Function} Optional. Callback function

searchKeywordFieldHistogram(parameters, callback)

Datetime histogram of a query using keyword timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __field__: {String} Field of whose values to get the histogram of
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __keyword__: {String} Range keyword
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchKeywordHistogram(parameters, callback)

Datetime histogram of a query using keyword timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __keyword__: {String} Range keyword
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchKeywordStats(parameters, callback)

Field statistics for a query using a keyword timerange
Returns statistics like min/max or standard deviation of numeric fields over the whole query result set
Arguments: parameters: {Object}
* __field__: {String} Message field of numeric type to return statistics for
* __query__: {String} Query (Lucene syntax)
* __keyword__: {String} Range keyword
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchKeywordTerms(parameters, callback)

Most common field terms of a query using a keyword timerange
Arguments: parameters: {Object}
* __field__: {String} Message field of to return terms of
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __keyword__: {String} Range keyword
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchKeywordTermsStats(parameters, callback)

Ordered field terms of a query computed on another field using a keyword timerange
Arguments: parameters: {Object}
* __key_field__: {String} Message field of to return terms of
* __value_field__: {String} Value field used for computation
* __order__: {String} What to order on (Allowed values: TERM, REVERSE_TERM, COUNT, REVERSE_COUNT, TOTAL, REVERSE_TOTAL, MIN, REVERSE_MIN, MAX, REVERSE_MAX, MEAN, REVERSE_MEAN)
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __keyword__: {String} Keyword timeframe
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

Search/Relative: Message search

searchRelative(parameters, callback)

Message search with relative timerange
Search for messages in a relative timerange, specified as seconds from now. Example: 300 means search from 5 minutes ago to now
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __range__: {Integer} Relative timeframe to search in. See method description
* _limit_: {Integer} Optional. Maximum number of messages to return
* _offset_: {Integer} Optional. Offset
* _filter_: {String} Optional. Filter
* __fields__: {String} Comma separated list of fields to return
callback: {Function} Optional. Callback function

searchRelativeFieldHistogram(parameters, callback)

Field value histogram of a query using a relative timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __field__: {String} Field of whose values to get the histogram of
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __range__: {Integer} Relative timeframe to search in. See search method description
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchRelativeHistogram(parameters, callback)

Datetime histogram of a query using a relative timerange
Arguments: parameters: {Object}
* __query__: {String} Query (Lucene syntax)
* __interval__: {String} Histogram interval / bucket size. (year, quarter, month, week, day, hour or minute)
* __range__: {Integer} Relative timeframe to search in. See search method description
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchRelativeStats(parameters, callback)

Field statistics for a query using a relative timerange
Returns statistics like min/max or standard deviation of numeric fields over the whole query result set
Arguments: parameters: {Object}
* __field__: {String} Message field of numeric type to return statistics for
* __query__: {String} Query (Lucene syntax)
* __range__: {Integer} Relative timeframe to search in. See search method description
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchRelativeTerms(parameters, callback)

Most common field terms of a query using a relative timerange
Arguments: parameters: {Object}
* __field__: {String} Message field of to return terms of
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __range__: {Integer} Relative timeframe to search in. See search method description
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

searchRelativeTermsStats(parameters, callback)

Ordered field terms of a query computed on another field using a relative timerange
Arguments: parameters: {Object}
* __key_field__: {String} Message field of to return terms of
* __value_field__: {String} Value field used for computation
* __order__: {String} What to order on (Allowed values: TERM, REVERSE_TERM, COUNT, REVERSE_COUNT, TOTAL, REVERSE_TOTAL, MIN, REVERSE_MIN, MAX, REVERSE_MAX, MEAN, REVERSE_MEAN)
* __query__: {String} Query (Lucene syntax)
* _size_: {Integer} Optional. Maximum number of terms to return
* __range__: {Integer} Relative timeframe to search in. See search method description
* _filter_: {String} Optional. Filter
callback: {Function} Optional. Callback function

Search/Saved: Saved searches

createSearchSaved(parameters, callback)

Create a new saved search
Arguments: parameters: {Object} {CreateSavedSearchRequest}
callback: {Function} Optional. Callback function

getSearchSavedAll(callback)

Get a list of all saved searches
Arguments: callback: {Function} Optional. Callback function

getSearchSaved(parameters, path, callback)

Get a single saved search
Arguments:
parameters: {null} path: {Object}
* __searchId__: {String}
callback: {Function} Optional. Callback function

updateSearchSaved(parameters, path, callback)

Update a saved search
Arguments: parameters: {Object} {CreateSavedSearchRequest} path: {Object}
* __searchId__: {String}
callback: {Function} Optional. Callback function

removeSearchSaved(parameters, path, callback)

Delete a saved search
Arguments:
parameters: {null} path: {Object}
* __searchId__: {String}
callback: {Function} Optional. Callback function

Sources: Listing message sources (e.g. hosts sending logs)

getSources(parameters, callback)

Get a list of all sources (not more than 5000) that have messages in the current indices. The result is cached for 10 seconds
Range: The parameter is in seconds relative to the current time. 86400 means "in the last day", 0 is special and means "across all indices"
Arguments: parameters: {Object}
* __range__: {Integer} Relative timeframe to search in. See method description
callback: {Function} Optional. Callback function

StaticFields: Static fields of an input

createInputStaticField(parameters, path, callback)

Add a static field to an input
Arguments: parameters: {Object} {CreateStaticFieldRequest} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

removeInputStaticField(parameters, path, callback)

Remove static field of an input
Arguments:
parameters: {null} path: {Object}
* __Key__: {String}
* __inputId__: {String}
callback: {Function} Optional. Callback function

StreamOutputs: Manage stream outputs for a given stream

createStreamOutput(parameters, path, callback)

Associate outputs with a stream
Arguments: parameters: {Object} {AddOutputRequest} path: {Object}
* __streamid__: {String} The id of the stream whose outputs we want
callback: {Function} Optional. Callback function

getStreamOutputs(parameters, path, callback)

Associate outputs with a stream
Arguments:
parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose outputs we want
callback: {Function} Optional. Callback function

getStreamOutput(parameters, path, callback)

Get specific output of a stream
Arguments: parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose outputs we want
callback: {Function} Optional. Callback function

removeStreamOutput(parameters, path, callback)

Delete output of a stream
Arguments:
parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose outputs we want
* __outputId__: {String} The id of the output that should be deleted
callback: {Function} Optional. Callback function

StreamRules: Manage stream rules

getStreamRules(parameters, path, callback)

Get a list of all stream rules
Arguments: parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose stream rule we want
callback: {Function} Optional. Callback function

getStreamRule(parameters, path, callback)

Get a single stream rules
Arguments:
parameters: {null} path: {Object}
* __streamid__: {String} The id of the stream whose stream rule we want
* __streamRuleId__: {String} The stream rule id we are getting
callback: {Function} Optional. Callback function

createStreamRule(parameters, path, callback)

Create a stream rule
Arguments: parameters: {Object} {CreateStreamRuleRequest} path: {Object}
* __streamid__: {String} The stream id this new rule belongs to
callback: {Function} Optional. Callback function

updateStreamRule(parameters, path, callback)

Update a stream rule
Arguments:
parameters: {Object} {CreateStreamRuleRequest} path: {Object}
* __streamid__: {String} The stream id this rule belongs to
* __streamRuleId__: {String} The stream rule id we are updating
callback: {Function} Optional. Callback function

removeStreamRule(parameters, path, callback)

Delete a stream rule
Arguments: parameters: {null} path: {Object}
* __streamid__: {String} The stream id this new rule belongs to
* __streamRuleId__: {String}
callback: {Function} Optional. Callback function

Streams: Manage streams

getStreams(callback)

Get a list of all streams
Arguments:
callback: {Function} Optional. Callback function

createStream(parameters, callback)

Create a stream
Arguments: parameters: {Object} {CreateStreamRequest}
callback: {Function} Optional. Callback function

getStreamsEnabled(callback)

Get a list of all enabled streams
Arguments: callback: {Function} Optional. Callback function

getStreamThroughput(parameters, path, callback)

Current throughput of this stream on this node in messages per second
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

getStreamAllThroughput(callback)

Current throughput of all visible streams on this node in messages per second
Arguments: callback: {Function} Optional. Callback function

getStream(parameters, path, callback)

Get a single stream
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

updateStream(parameters, path, callback)

Update a stream
Arguments: parameters: {Object} {UpdateStreamRequest} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

removeStream(parameters, path, callback)

Delete a stream
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

cloneStream(parameters, path, callback)

Clone a stream
Arguments: parameters: {Object} {CloneStreamRequest} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

pauseStream(parameters, path, callback)

Pause a stream
Arguments:
parameters: {null} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

resumeStream(parameters, path, callback)

Resume a stream
Arguments: parameters: {null} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

testMatchStream(parameters, path, callback)

Test matching of a stream against a supplied message
Arguments:
parameters: {Object} {Map} path: {Object}
* __streamId__: {String}
callback: {Function} Optional. Callback function

System: System information of this node

getSystem(callback)

Get system overview
Arguments: callback: {Function} Optional. Callback function

getJVM(callback)

Get JVM information
Arguments:
callback: {Function} Optional. Callback function

getThreadDump(callback)

Get a thread dump
Arguments: callback: {Function} Optional. Callback function

System/Buffers: Buffer information of this node.

getBuffers(callback)

Get current utilization of buffers and caches of this node
Arguments:
callback: {Function} Optional. Callback function

getBuffersClasses(callback)

Get classnames of current buffer implementations
Arguments: callback: {Function} Optional. Callback function

System/Bundles: Content packs

createBundle(parameters, callback)

Upload a content pack
Arguments:
parameters: {Object}
* __Request__ body {ConfigurationBundle} Content pack
callback: {Function} Optional. Callback function

getBundles(callback)

List available content packs
Arguments:
callback: {Function} Optional. Callback function

exportBundles(parameters, callback)

Export entities as a content pack
Arguments: parameters: {Object}
* __exportBundle__: {ExportBundle} Export content pack
callback: {Function} Optional. Callback function

getBundle(parameters, path, callback)

Show content pack
Arguments: parameters: {null} path: {Object}
* __bundleId__: {String} Content pack ID
callback: {Function} Optional. Callback function

updateBundle(parameters, path, callback)

Update content pack
Arguments:
parameters: {Object}
* __Request__ body {ConfigurationBundle} Content pack
path: {Object}
* __bundleId__: {String} Content pack ID
callback: {Function} Optional. Callback function

removeBundle(parameters, path, callback)

Delete content pack
Arguments: parameters: {null} path: {Object}
* __bundleId__: {String} Content pack ID
callback: {Function} Optional. Callback function

applyBundle(parameters, path, callback)

Set up entities described by content pack
Arguments:
parameters: {null} path: {Object}
* __bundleId__: {String} Content pack ID
callback: {Function} Optional. Callback function

System/Cluster: Node discovery

getNodeThis(callback)

Information about this node
This de itself to get system information
Arguments: callback: {Function} Optional. Callback function

getNodes(parameters, path, callback)

List all active nodes in this cluster
Arguments:
parameters: {null} path: {Object}
* __nodeId__: {String}
callback: {Function} Optional. Callback function

getNode(parameters, path, callback)

Information about a node
This is returning information of a node in context to its state in the cluster. Use the system API of the node itself to get system information
Arguments: parameters: {null} path: {Object}
* __nodeId__: {String}
callback: {Function} Optional. Callback function

System/ClusterStats: Cluster stats

getClusterStats(callback)

Cluster snformation
This resource returns information about the Graylog cluster
Arguments:
callback: {Function} Optional. Callback function

getClusterStatsElasticsearch(callback)

Elasticsearch information
This resource returns information about the Elasticsearch Cluster
Arguments: callback: {Function} Optional. Callback function

getClusterStatsMongo(callback)

MongoDB information
This aut MongoDB
Arguments:
callback: {Function} Optional. Callback function

System/Collectors: Management of Graylog Collectors

getSystemCollectors(callback)

Lists all existing collector registrations
Arguments: callback: {Function} Optional. Callback function

getSystemCollector(parameters, path, callback)

Returns at most one collector summary for the specified collector id
Arguments:
parameters: {null} path: {Object}
* __collectorId__: {String}
callback: {Function} Optional. Callback function

System/Collectors/Registration: Registration resource for Graylog Collector nodes

changeCollector(parameters, path, callback)

Create/update an collector registration
This is a stateless method which upserts a collector registration
Arguments: parameters: {Object} {CollectorRegistrationRequest} path: {Object}
* __collectorId__: {String} The collector id this collector is registering as
callback: {Function} Optional. Callback function

System/Debug/Events: For debugging local and cluster events.

createDebugEventsCluster(parameters, callback)

Create and send a cluster debug event
Arguments:
parameters: {Object}
* _text_: {String} Optional.
callback: {Function} Optional. Callback function

getDebugEventsCluster(callback)

Show last received cluster debug event
Arguments:
callback: {Function} Optional. Callback function

createDebugEventsLocal(parameters, callback)

Create and send a local debug event
Arguments: parameters: {Object}
* _text_: {String} Optional.
callback: {Function} Optional. Callback function

getDebugEventsLocal(callback)

Show last received local debug event
Arguments: callback: {Function} Optional. Callback function

System/Deflector: Index deflector management

getDeflector(callback)

Get current deflector status
Arguments:
callback: {Function} Optional. Callback function

getDeflectorConfig(callback)

Get deflector configuration. Only available on master nodes
Arguments: callback: {Function} Optional. Callback function

nextDeflectorCycle(callback)

Cycle deflector to new/next index
Arguments:
callback: {Function} Optional. Callback function

System/Fields: Get list of message fields that exist.

getFields(parameters, callback)

Get list of message fields that exist
This operation is comparably fast because it reads directly from the indexer mapping
Arguments: parameters: {Object}
* _limit_: {Integer} Optional. Maximum number of fields to return. Set to 0 for all fields
callback: {Function} Optional. Callback function

System/Grok: Manage grok patterns

getGroks(callback)

Get all existing grok patterns
Arguments: callback: {Function} Optional. Callback function

getGrok(parameters, path, callback)

Get the existing grok pattern
Arguments:
parameters: {null} path: {Object}
* __patternId__: {String}
callback: {Function} Optional. Callback function

createGrok(parameters, callback)

Add a new named pattern
Arguments: parameters: {Object}
* __pattern__: {GrokPatternSummary}
callback: {Function} Optional. Callback function

createGroks(parameters, callback)

Update an existing pattern
Arguments: parameters: {Object}
* __patterns__: {Array}
callback: {Function} Optional. Callback function

updateGrok(parameters, path, callback)

Update an existing pattern
Arguments: parameters: {Object}
* __pattern__: {GrokPatternSummary}
path: {Object}
* __patternId__: {String}
callback: {Function} Optional. Callback function

removeGrok(callback)

Remove an existing pattern by id
Arguments:
callback: {Function} Optional. Callback function

System/IndexRanges: Index timeranges

getIndicesRanges(callback)

Get a list of all index ranges
Arguments: callback: {Function} Optional. Callback function

rebuildIndicesRanges(callback)

Rebuild/sync index range information
This as in what timeranges. It atomically overwrites already existing meta information
Arguments:
callback: {Function} Optional. Callback function

System/Inputs: Message inputs of this node

createInput(parameters, callback)

Launch input on this node
Arguments: parameters: {Object} {InputLaunchRequest}
callback: {Function} Optional. Callback function

getInput(null, path, callback)

Get information of a single input on this node
Arguments: parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

getInputs(callback)

Get all inputs of this node
Arguments:
callback: {Function} Optional. Callback function

updateInput(parameters, path, callback)

Update input on this node
Arguments: parameters: {Object} {InputLaunchRequest} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

removeInput(parameters, path, callback)

Terminate input on this node
Arguments:
parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

launchInput(parameters, path, callback)

Launch existing input on this node
Arguments: parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

restartInput(parameters, path, callback)

Restart existing input on this node
Arguments:
parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

stopInput(parameters, path, callback)

Stop existing input on this node
Arguments: parameters: {null} path: {Object}
* __inputId__: {String}
callback: {Function} Optional. Callback function

System/Inputs/Types: Message input types of this node

getInputsType(parameters, path, callback)

Get information about a single input type
Arguments:
parameters: {null} path: {Object}
* __inputType__: {String}
callback: {Function} Optional. Callback function

getInputsTypes(callback)

Get all available input types of this node
Arguments: callback: {Function} Optional. Callback function

System/Jobs: System Jobs

createJob(parameters, callback)

Trigger new job
Arguments:
parameters: {Object} {TriggerRequest} callback: {Function} Optional. Callback function

getJobs(callback)

List currently running jobs
Arguments:
callback: {Function} Optional. Callback function

getJob(parameters, path, callback)

Get information of a specific currently running job
Arguments: parameters: {null} path: {Object}
* __jobId__: {String}
callback: {Function} Optional. Callback function

System/Journal: Message journal information of this node.

getJournal(callback)

Get current state of the journal on this node
Arguments:
callback: {Function} Optional. Callback function

System/LDAP: LDAP settings

getLDAPSettings(callback)

Get the LDAP configuration if it is configured
Arguments: callback: {Function} Optional. Callback function

updateLDAPSettings(parameters, callback)

Update the LDAP configuration
Arguments:
parameters: {Object} {LdapSettingsRequest} callback: {Function} Optional. Callback function

removeLDAPSettings(callback)

Remove the LDAP configuration
Arguments:
callback: {Function} Optional. Callback function

testLDAPSettings(parameters, callback)

Test LDAP Configuration
Arguments: parameters: {Object}
* __Configuration__ to test {LdapTestConfigRequest}
callback: {Function} Optional. Callback function

System/LoadBalancers: Status propagation for load balancers

getLoadBalancerStatus(callback)

Get status of this graylog2-server node for load balancers. Returns either ALIVE with HTTP 200 or DEAD with HTTP 503
Arguments: callback: {Function} Optional. Callback function

updateLoadBalancerStatusOverride(parameters