{ "$schema": "https://choria.io/schemas/mcorpc/ddl/v1/agent.json", "metadata": { "name": "rpcutil", "description": "General helpful actions that expose stats and internals to SimpleRPC clients", "author": "R.I.Pienaar ", "license": "Apache License, Version 2.0", "version": "0.19.0", "url": "https://choria.io/", "timeout": 2 }, "actions": [ { "action": "agent_inventory", "input": { }, "output": { "agents": { "description": "List of agents on the server", "display_as": "Agents", "default": null } }, "display": "always", "description": "Inventory of all agents on the server" }, { "action": "collective_info", "input": { }, "output": { "main_collective": { "description": "The main Collective", "display_as": "Main Collective", "default": null }, "collectives": { "description": "All Collectives", "display_as": "All Collectives", "default": null } }, "display": "always", "description": "Info about the main and sub collectives", "aggregate": [ { "function": "summary", "args": [ "collectives" ] } ] }, { "action": "daemon_stats", "input": { }, "output": { "threads": { "description": "List of threads active in the daemon", "display_as": "Threads", "default": null }, "agents": { "description": "List of agents loaded", "display_as": "Agents", "default": null }, "pid": { "description": "Process ID of the daemon", "display_as": "PID", "default": null }, "times": { "description": "Processor time consumed by the daemon", "display_as": "Times", "default": null }, "validated": { "description": "Messages that passed security validation", "display_as": "Security Validated", "default": null }, "unvalidated": { "description": "Messages that failed security validation", "display_as": "Failed Security", "default": null }, "passed": { "description": "Passed filter checks", "display_as": "Passed Filter", "default": null }, "filtered": { "description": "Didn't pass filter checks", "display_as": "Failed Filter", "default": null }, "starttime": { "description": "Time the server started", "display_as": "Start Time", "default": null }, "total": { "description": "Total messages received", "display_as": "Total Messages", "default": null }, "replies": { "description": "Replies sent back to clients", "display_as": "Replies", "default": null }, "configfile": { "description": "Config file used to start the daemon", "display_as": "Config File", "default": null }, "version": { "description": "MCollective Version", "display_as": "Version", "default": null }, "ttlexpired": { "description": "Messages that did pass TTL checks", "display_as": "TTL Expired", "default": null } }, "display": "always", "description": "Get statistics from the running daemon", "aggregate": [ { "function": "summary", "args": [ "version" ] }, { "function": "summary", "args": [ "agents" ] } ] }, { "action": "get_config_item", "input": { "item": { "prompt": "Configuration Item", "description": "The item to retrieve from the server", "type": "string", "default": null, "optional": false, "validation": "^.+$", "maxlength": 50 } }, "output": { "item": { "description": "The config property being retrieved", "display_as": "Property", "default": null }, "value": { "description": "The value that is in use", "display_as": "Value", "default": null } }, "display": "always", "description": "Get the active value of a specific config property", "aggregate": [ { "function": "summary", "args": [ "value" ] } ] }, { "action": "get_data", "input": { "source": { "prompt": "Data Source", "description": "The data plugin to retrieve information from", "type": "string", "default": null, "optional": false, "validation": "^\\w+$", "maxlength": 50 }, "query": { "prompt": "Query", "description": "The query argument to supply to the data plugin", "type": "string", "default": null, "optional": true, "validation": "^.+$", "maxlength": 200 } }, "output": { }, "display": "always", "description": "Get data from a data plugin" }, { "action": "get_fact", "input": { "fact": { "prompt": "The name of the fact", "description": "The fact to retrieve", "type": "string", "default": null, "optional": false, "validation": ".+", "maxlength": 512 } }, "output": { "fact": { "description": "The name of the fact being returned", "display_as": "Fact", "default": null }, "value": { "description": "The value of the fact", "display_as": "Value", "default": null } }, "display": "always", "description": "Retrieve a single fact from the fact store", "aggregate": [ { "function": "summary", "args": [ "value" ] } ] }, { "action": "get_facts", "input": { "facts": { "prompt": "Comma-separated list of facts", "description": "Facts to retrieve", "type": "string", "default": null, "optional": false, "validation": "^\\s*[\\w\\.\\-]+(\\s*,\\s*[\\w\\.\\-]+)*$", "maxlength": 200 } }, "output": { "values": { "description": "List of values of the facts", "display_as": "Values", "default": null } }, "display": "always", "description": "Retrieve multiple facts from the fact store" }, { "action": "inventory", "input": { }, "output": { "agents": { "description": "List of agent names", "display_as": "Agents", "default": null }, "facts": { "description": "List of facts and values", "display_as": "Facts", "default": null }, "classes": { "description": "List of classes on the system", "display_as": "Classes", "default": null }, "version": { "description": "MCollective Version", "display_as": "Version", "default": null }, "main_collective": { "description": "The main Collective", "display_as": "Main Collective", "default": null }, "collectives": { "description": "All Collectives", "display_as": "All Collectives", "default": null }, "data_plugins": { "description": "List of data plugin names", "display_as": "Data Plugins", "default": null }, "machines": { "description": "Autonomous Agents", "display_as": "Machines", "default": null } }, "display": "always", "description": "System Inventory" }, { "action": "ping", "input": { }, "output": { "pong": { "description": "The local timestamp", "display_as": "Timestamp", "default": null } }, "display": "always", "description": "Responds to requests for PING with PONG" } ] }