module.exports = function(client) { /* section: search *comment: | * search for metrics and hosts from the past 24 hours *params: * query: the seach query to perform (e.g. "app1" or "hosts:app1" or "metrics:response") * callback: function(err, res) *example: | * ```javascript * const dogapi = require("dogapi"); * const options = { * api_key: "api_key", * app_key: "app_key" * }; * dogapi.initialize(options); * const query = "app"; * dogapi.search.query(query, function(err, res){ * console.dir(res); * }); * ``` */ function query(q, callback) { const params = { query: { q } }; client.request('GET', '/search', params, callback); } return { query, getUsage() { return [' dogapi search query ']; }, getHelp() { return [ 'Search:', ' Subcommands:', ' query search for hosts and metrics from the last 24 hours' ]; }, handleCli(subcommand, args, callback) { if (subcommand === 'query' && args._.length > 4) { query(args._[4], callback); } else { return callback( 'unknown subcommand or arguments try `dogapi search --help` for help', false ); } } }; };