Automation

The Automation tool reads your exported automation flows, finds the ones that spend more steps than they need, and says what each fix would save. This page covers scanning, the findings, the savings and how they are estimated.

On this page

How Atlassian counts steps

Atlassian measures automation in steps. Every trigger, condition, action, branch and loop that runs counts as one, including runs that a condition stops. These cases differ:

  • A trigger's own conditions cost no step. A run they stop costs the trigger's one step.
  • An if/else costs one step, plus one for each block it checks.
  • Writing to the audit log and creating a variable cost no step.
  • Steps in a branch count once for each work item the branch goes through.
  • A scheduled search runs its steps once for each work item it finds, unless it handles them all at once.
  • Rovo actions use Rovo credits instead of steps.

Each plan includes a monthly allowance per user, pooled across your organization. Steps above it are billed as extra usage. On the Free plan, Jira stops your flows once the month's allowance is used up and nothing is billed. The Assumptions page lists every estimate TuneCraft uses.

Scan your flows

No Atlassian API lets an app read your flows, so you give TuneCraft Jira's export.

  1. Export the flows as described in Getting started. On large sites Jira saves the export in several files.
  2. Open Scan and choose the files, or drop them on the page. Choose all the files of one export at once. A file can be up to 50 MB.
  3. Optionally choose Jira's automation audit log with the export (see below).
  4. Your browser reads the files and the Scan page shows What to fix first: the flows with findings, the ones that could save the most first. It says if an entry of the export was skipped because TuneCraft cannot read it, or a flow was in more than one file (it counts once).
  5. TuneCraft saves the scan. The Scan page then says Scan saved.

The Scan page lists what leaves your browser. In short, TuneCraft keeps each flow's id, name, trigger type, projects, creation day and failure-email setting, its owner's and actor's account ids, and the numbers shown. Texts such as web request addresses, headers, email addresses, smart values, custom field names and values compared never leave your browser. See Privacy and data.

Only Jira admins can export every flow. Scanning needs a licence or a trial; Help, Maintenance and the Support bundle work without one. See Licence and trial.

The audit log

You can choose Jira's automation audit log, its CSV export, with the export. Use the Audit log tab of Jira's automation page, not Jira's system audit log. With it, TuneCraft counts each flow's real runs and steps instead of estimating them, and it can check run health. Only numbers and days leave your browser, never the work items, people, rule names or times of day. The Help page lists every number sent.

  • Tick The audit log lists every run of its days only if you exported it without a filter. Then a flow that is turned on and that the log does not name did not run in those days and costs no steps.
  • A log that looks exported with a status filter is named on the Scan page. TuneCraft keeps only the days of its runs from it, never measured counts.
  • Logs of one day each, chosen together, are read as days in a row. TuneCraft reads a log in whatever language Jira exported it.
  • The audit logs can cover up to 366 days. If they cover more, TuneCraft counts the newest 366.

The counts are kept on the Assumptions page for later scans. A flow with measured steps costs what was measured.

The findings

Each finding says why a flow costs steps, how to fix it, and how many steps a month the fix may save. The savings are estimates unless the flow has measured counts.

Finding What it means
Starts on every edit The trigger fires on any change when the flow cares about one field. Use "Field value changed" on that field.
Runs in more projects than it needs A flow for every project whose conditions all name one project. Limit it to that project.
Checks the status after starting A status condition that the trigger could check itself.
Condition placed late A cheap condition after lookups, web requests or branches. Move it up.
Can trigger itself A flow that starts its own next run.
Flows trigger each other in a circle A loop across flows, found with a graph.
Same flow as another Flows that do exactly the same. In shared projects, every event runs each copy.
Several flows start on the same event Each pays its own trigger step for every event.
Scheduled more often than hourly A frequent schedule that runs a search.
Acts on every match on each run A scheduled search with no "changed since the last run".
Lookup inside a branch A search that could run once, before the branch.
Branch searches for items it could reach directly A search that a branch on related work items does without one.
Data fetched again more than once A repeated re-fetch that reads nothing new.
If/else parts with no action Blocks that do nothing but still cost steps through their conditions.
Steps spent on fields nobody sees Flows keep up to date a custom field that no screen shows and nothing reads.

Flows near Jira's service limits and flows with credentials in them are reported on Run health, governance and usage. A flow that is broken (it names something Jira no longer has) is reported there as well.

The pages of the tool

The Automation rail holds these pages.

  • Overview. Site health is the share of the steps your flows spend that are not waste (estimated). Steps a month shows now, after the fixes, and what your plan includes. If your site is over its allowance, it shows the extra cost per month at the plan's rate for 1,000 steps, marked estimated, and says that Jira's Usage tab shows the steps Jira counted. Fix these first lists the flows whose fixes save the most. Savings shows what is saved so far and what can still be saved. This month's forecast is from Usage.
  • Scan. Described above.
  • Optimize. Builds the corrected flow. See Optimize and fix.
  • Flows. Every flow of the last scan with its score, findings and status, filtered and sorted.
  • Dependencies. Which flows can start other flows, and the loops among them. See Optimize and fix.
  • Saved. Fixes your scans confirmed: a finding a flow had in one scan and no longer has in the next. Each saves what the finding was estimated to cost in the scan before. A copy counts as saved once it is turned off.
  • Can still save. Every finding of the last scan, the ones whose fixes save the most first.
  • History. One entry per scan, as a chart and a table, with a button to delete a scan. TuneCraft keeps the last 24 scans.
  • Assumptions. How Jira counts steps and every estimate TuneCraft uses, with your site's values. You can change a value, or type a flow's measured runs or steps a month. The next scan uses them; scans already saved keep their numbers.
  • Run health, Broken flows, Governance, Usage, Alerts, Check before you delete. See Run health, governance and usage.

Measured and estimated

  • Measured: a count read from Jira or from a file you scanned, such as the runs and steps in an audit log, or the number of broken flows.
  • Estimated: a number TuneCraft worked out, such as the steps a month a flow costs without an audit log, or what a fix saves.

The savings come from TuneCraft's counting engine and nothing else. A scan with measured runs gives a closer figure than one without. When the steps are estimated, the Overview compares them to your plan and says so.

Limits and costs of automation

  • A scan reads files in your browser: no Jira points are spent on that. A scan a Jira admin starts also asks Jira about the flows' owners, actors and scheduled searches, as that person.
  • TuneCraft counts the work items each scheduled search finds now, with Jira's approximate count, and checks each flow's JQL in Jira. Only the counts reach TuneCraft.
  • If the database is nearly full, a scan is saved without keeping its flows or what they use. The Scan page says so, and Database size shows what takes the space.
  • During a trial, the optimizer works on one flow. See Licence and trial.

Questions about the app? Write to info@plugincraft.ca.