-
Notifications
You must be signed in to change notification settings - Fork 0
Configurations
Plumage lets you manage configurations, which you then provide parameters to run, actually sending traffic and recording results. It is designed that a Polygraph specialist can create a library of configurations for any performance tester to then apply to your proxy under varying conditions.
Plumage isn't a graphical editor for Polygraph configurations. If you're going to be writing one, you should first have an idea how to use Polygraph Language.
Polygraph configurations handled by Plumage are Template::Toolkit templates which are processed down to standard PGL files. Therefore if you write a configuration for plain Polygraph, so long as you avoid Template::Toolkit syntax ([%
and %]
), it should work through Plumage as-is. However, it is far more useful to use template variables that runs can vary, and if you have multiple hardware setups, that hosts can vary.
Go to the Plumage UI, and click "add configuration". Give it a name, and paste in a Polygraph configuration. To get you started, there is a simple one in the example
folder. Read the comments and adjust as necessary.
We need to tell Plumage which variables it needs to allow runs to provide to the template. In the parameters table, add proxy_ip
and proxy_port
. Provide some default values if you want. You can use the configuration's comment field to document any non-obvious parameters or prequisites of the configuration, e.g. that the proxy has to be configured in particular way to let the traffic through.
(In the current, early version of Plumage you need to add one parameter, save, and then edit the configuration again to get another parameter row.)
Next: Running the configuration.
- You can write configurations which will work on any of several different client/server pairs by using [host parameters](Host parameters)
- Plumage understands how to run multiple Polygraph processes to spread your test load over multiple CPU cores, which is very helpful when doing crypto-intensive HTTPS testing. Your configurations have to be written to spread the address usage appropriately.
Special comments within the PGL configuration will be detected by Plumage, of the format:
//plumage//key//value
The comment must be at the very start of the line. The value proceeds to the end of the line.
Recognized keys are:
-
reportname: defines the name of the generated Polygraph report. Plumage will insist this contains only alphanumerics, periods, colons, hyphens, and underscores since report generation is prone to shell metacharacter confusion. It does not have to be unique; the only affect it has is on the heading Polygraph gives the report pages. The value is parsed after template processing, so may be built from template parameters, e.g.
//plumage//reportname//Standard-load_[% proxy_ip %]
. Plumage will automatically append an ISO 8601 datestamp.
Plumage wiki content is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.