The punchlinectl command lets you start an individual punchline. I.e. not going through a channelctl command.
Note that punchlinectl is typicallu used in two different contexts. First the punch shiva application scheduler uses that command to launch punchline applications. This happens if you define a punchline as part of a punch channel and make it run in a shiva cluster.
Second, you can use it from a punch operator terminal to submit a punchline for execution directly. This mode is not a production-typical mode but can be useful to investigate issues on a production platform, and is of course very useful on development platform and?or the punch standalone.
The punchlinectl command if fully documented inline and provides rich auto-completion facilities. This page contains only the very basic usage.
Run a punchline with the default storm execution engine:
Run a spark punchline:
punchlinectl mypunchline.hjson --runtime spark
Get the help menu:
punchlinectl uses the library located :
The logging verbosity of punchlinectl is controlled by the following two files:
In the context of shiva execution, i.e. if punchlinectl is launched through shiva on some shiva worker server, the PUNCHPLATFORM_LOG4J_CONF_DIR points on a different log4j directory
Note that these loggers use the stdout appenders. This is on purpose because punchlinectl is designed to run with a stdout/stderr strategy. Its logs are either prompted to the user terminal, or are handled automatically by shiva, again through the stdout/stderr unix pipes.
punchlinectl is executed in three different environment : in the context of the operator terminal environment when launched manually, in the context of the shiva application scheduler when upcalled from a channel command or in the context of gateway application