Version

    MonitorGraph

    Jobflow Component

    Short Description
    Ports
    Metadata
    MonitorGraph Attributes
    Details
    See also

    Short Description

    MonitorGraph allows watching of running graphs. Component can either wait for a final execution status or periodically monitor the current execution status.

    [Note]Note

    To be able to use this component, you need a separate jobflow license. Also, the component requires your project is executed on CloverDX Server.

    ComponentSame input metadataSorted inputsInputsOutputsEach to all outputsJavaCTLAuto-propagated metadata
    MonitorGraph0-10-2

    Ports

    Port typeNumberRequiredDescriptionMetadata
    Input0Input tokens with identification of monitored graph.Any
    Output0Execution information for successful graphs.Any
    1Execution information for unsuccessful graphs.Any

    Metadata

    MonitorGraph does not propagate metadata from left to right or from right to left.

    This component has metadata templates. The templates are described in Details. See general details on metadata templates.

    MonitorGraph Attributes

    AttributeReqDescriptionPossible values
    Basic
    Graph URLno

    The path to a graph which represents a typical monitored graph. The graph referenced by this attribute is also used for all mapping dialogs - they display dictionary entries and tracking information based on this graph.

     
    Timeoutno

    The maximal amount of time dedicated for graph run; by default in milliseconds, but other time units may be used. If the graph is running longer than the time specified in this attribute, the current graph information with TIMEOUT status is send to the error output port.

    This is just a default value for all graph monitors. It can be overridden in input mapping individually for each graph monitor.

    By default, the value of this attribute is not specified meaning the component waits indefinitely. If set to 0, it aborts the target job execution immediately.

    not specified | 0 | positive number
    Monitoring intervalno

    Whenever time specified in this attribute elapses, the graph monitor sends an actual graph status information to the first output port. The interval is in milliseconds by default, but other time units may be used.

    By default, only final graph results are sent to output ports.

    This is just a default value for all graph monitors. It can be overridden in the input mapping individually for each graph monitor.

    none (default) | positive number
    Input mappingno

    Input mapping defines how to extract run ID and other graph monitor settings from incoming token. See Input Mapping.

    CTL transformation
    Output mappingno

    Output mapping maps results of successful graphs to the first output port. Output mapping is used also for sending of current status in case the monitoring interval is specified. See Output mapping.

    CTL transformation
    Error mappingno

    The error mapping maps results of unsuccessful graphs to the second output port. See Error mapping.

    CTL transformation
    Redirect error outputno

    By default, results of failed graphs are sent to the second output port (error port). If this switch is true, results of unsuccessful graphs are sent to the first output port in the same way as successful graphs.

    false (default) | true
    Advanced
    Run IDno

    Statically defined run ID of monitored graph. This attribute is usually overridden in the input mapping by data from an incoming token.

    string

    Details

    The MonitorGraph component allows watching of running graphs. Each incoming token triggers a new monitor of a graph specified by run ID extracted from the token. It is possible to monitor multiple graphs at once.

    A single graph monitor watches the graph and waits for it to finish. When the graph is finished running, graph results are sent to the output port in the same manner as in ExecuteGraph component; results of successful graphs are sent to the first output port and unsuccessful graphs are sent to the second output port. Moreover, whenever time specified in the monitoring interval attribute elapses, the graph monitors send current graph status information even for still running graphs.

    In case no input port is attached, only one graph is monitored with the settings specified in component's attributes. In case the first output port is not connected, the component just prints out the graph results to the log. In case the second output port (error port) is not attached, the first graph that fails would cause interruption of the parent job.

    Input mapping defines how to extract run ID and other settings of the graph monitor from incoming token. Whenever graph results or actual graph status need to be mapped to output ports, output mapping and error mapping attributes are used to populate output tokens. Information available in graph results comprise mainly of general runtime information, dictionary content and tracking information.

    [Note]Note

    Only graphs executed by the current jobflow (direct children) can be watched by the MonitorGraph component.

    Input Mapping

    Input mapping is a regular CTL transformation which is executed for each incoming token to specify the run ID of monitored graph and settings of respective graph monitor. Available output fields:

    Field NameTypeDescription
    runIdlongRun ID of monitored graph. Overrides component attribute Run ID.
    timeoutlongOverrides component attribute Timeout.
    monitoringIntervallongOverrides component attribute Monitoring interval.

    Output mapping

    Output mapping is a regular CTL transformation which is used to populate token passed to the first output port. The mapping is executed for successful graphs or for current status of still running graphs, which is sent in case monitoring interval is specified. More details about input records for this output mapping is available in documentation for the ExecuteGraph component.

    The graph monitor finishes watching the graph after the graph is complete or timeout elapses. Another option how to stop graph monitoring is to return STOP constant in output mapping.

    Error mapping

    Error mapping is almost identical to output mapping. This error mapping is used only if the graph finished unsuccessfully or timeout elapsed. The second output port is populated by error mapping.