Some technical notes:

On Mon, Mar 19, 2018 at 4:19 PM, Samuel Van Oort <[email protected]> wrote:
>> distinct built-in step invocations (i.e. not counting Global Variable
>> invocations)
>
> This can't be measured easily from the flow graph due to the potential to
> create multiple block structures for one step.

Actually you _can_ get this from the flow graph already. You just
count `StepNode`s with no `BodyInvocationAction`. (cf.
`StepStartNode.isBody`)

> Not sure how we'd tell Scripted vs. Declarative

`DeclarativeJobAction`

> how many
> shared libraries are used *per-pipeline* -- easy to measure from the count
> of LoadedScripts I believe

That would tell you how many `load` steps were used. To count
libraries, check `LibrariesAction`.

> looking for WorkspaceActionImpl -- nodes and labels are be available

Note that the labels here were of the actual node allocated, not the
label expression (if any) requested by the step, for which use
`ArgumentsAction`.

> If we could find a way I'd really like to have a counter of how many
> elements of GroovyCPS logic are run and how many function calls

Easy—patch `CpsFlowExecution.start` to create a proxy `Invoker` that
counts the different kinds of calls. This could be included in the
current `CpsFlowExecution.PipelineTimings`, actually.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr0PTLf8XR%2BYsW0xb7Fhki8sutNanjdGV2tjyA60kVtdgQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to