Processors

Processors can work either as consumers of input bytes (e.g. storing part of the input into session variables), as filters (passing modified version of the input to delegated processors) or combination of the above.

Some processors can expect extra context in the session, such as an ongoing (HTTP) request. It is possible to use processors that don’t expect specific type of request in places where a more specific type is provided; opposite is not allowed.

Also it is possible to use an action instead of a processor; Hyperfoil automatically inserts an adapter. That’s why the list below includes actions as well.


addItem

Appends value to an array stored in another variable.

addToInt

Add value to integer variable in the session.

addToSharedCounter

Adds value to a counter shared by all sessions in the same executor.

array

Stores data in an array stored as session variable.

clearHttpCache

Drops all entries from HTTP cache in the session.

closeConnection

Prevents reuse connection after the response has been handled.

collection

Collects results of processor invocation into a unbounded list.

conditional

Passes the data to nested processor if the condition holds.

count

Records number of parts this processor is invoked on.

fail

Fail the phase with given message. Used mostly for testing/debugging.

getIndex

Lookup index of an item in an array/collection.

getItem

Retrieves n-th item from an array or collection.

getSharedCounter

Retrieves value from a counter shared by all sessions in the same executor and stores that in a session variable.

getSize

Calculates size of an array/collection held in variable into another variable

gzipInflator

Decompresses a GZIP data and pipes the output to delegated processors.

json

Parses JSON responses using simple queries.

log

Log a message and variable values.

logInvalid

Logs body chunks from requests marked as invalid.

markRequestInvalid

Unconditionally mark currently processed request as invalid.

newSequence

Instantiates a sequence for each invocation.

parseHtml

Parses HTML tags and invokes handlers based on criteria.

publishAgentData

Makes the data available to all sessions in the same agent, including those using different executors.

publishGlobalCounters

Gathers values from session variables and publishes them globally (to all agents).

queue

Stores defragmented data in a queue.

readAgentData

Reads data from agent-wide scope into session variable.

removeItem

Removes element from an array of variables.

restartSequence

Schedules a restart of this sequence.

set

Set variable in session to certain value.

setInt

Set session variable to an integral value.

setItem

Set element in a collection on given position.

setSharedCounter

Sets value in a counter shared by all sessions in the same executor.

store

Stores data in a session variable (overwriting on multiple occurences).

storeInt

Converts buffers into integral value and stores it in a variable.

stringToInt

Parse string into integer and store it in a variable.

unset

Undefine variable name.


Last modified September 2, 2024: docs: fix quickstart links (245525b)