Targets

Targets are a logical identifier that maps to a hotrod-agent. Targets are created on the server (hotrodd) and have a unique name and id property. If an id is not specified the system will auto generate a uuid for the target, this is recommended, as the name property is used as a friendly identifier that you can choose and also change at any time without impacting any of the other Hotrod functionality.

Target names and ids must be unique.

Listing Targets

List the current targets on the server.

$ hotrod targets list

 name          | id      | tags | pipes | last seen
---------------+---------+------+-------+-----------
 <TARGET NAME> | <UUID>  |      |       |

Deleting Targets

$ hotrod targets remove <TARGET NAME>

target <TARGET NAME> (<UUID>) removed

Creating Targets

$ hotrod targets add <TARGET NAME>

target <TARGET NAME> has id <UUID>

Updating Targets

Targets are the logical identifier's used by hotrod-agent to instantiate pipes, to that extent an end user can add or remove pipes from a target in two different way, firstly by manually adding pipes to a specific target (see "Managing pipes and targets" below), secondly add pipes to all targets that match a specific tag, this allows bulk addition and removal of pipes (see "Managing tags and targets" below).

Managing pipes and targets

To manually add and remove pipes from a target follow the steps below:

Add a pipe to a target

$ hotrod targets update <TARGET NAME> --add-pipe <PIPE NAME>

[INFO] user=admin adding pipe=<PIPE NAME> to target=<TARGET NAME>

Remove a pipe from a target

$ hotrod targets update <TARGET NAME> --remove-pipe <PIPE NAME>

[INFO] user=admin removing pipe=<PIPE NAME> from target=<TARGET NAME>

Managing tags and targets

To add and remove pipes from a target in bulk, add tags to the target by following the steps below:

Add a tag to a target

$ hotrod targets update <TARGET NAME> --add-tag <TAG NAME>

[INFO] user=admin added tag <TAG NAME> to target=<TARGET NAME>

Remove a tag from a target

$ hotrod targets update <TARGET NAME> --remove-tag <TAG NAME>

[INFO] user=admin removing tag <TAG NAME> from target id=<TARGET NAME>