Documentation
Overview
ConfluOps embeds live AWS CloudWatch alarm statuses as color-coded badges directly in your Confluence pages. Place indicators anywhere on a page — in tables, dashboards, or inline with text — to give your team instant visibility into infrastructure health without leaving Confluence.
Prerequisites
- A Confluence Cloud instance with ConfluOps installed from the Atlassian Marketplace
- Confluence administrator access (to add AWS accounts)
- An AWS account with at least one CloudWatch alarm
- Permission to deploy a CloudFormation stack in that AWS account
Setup
1. Deploy the IAM role (recommended)
ConfluOps connects to your AWS account using an IAM role — no long-lived credentials are required. Create the role using either CloudFormation or Terraform.
Option A — CloudFormation
-
In Confluence, go to Apps → ConfluOps Admin. Click Add account to open the setup wizard.
-
The wizard will display a CloudFormation template URL and an External ID unique to your Confluence site. Copy the template URL.
-
Open the AWS Console and navigate to CloudFormation → Create stack. Paste the template URL when prompted for an Amazon S3 URL.
-
When asked for parameters, paste the External ID from step 2 into the
ExternalIdfield. Complete the stack creation. -
Once the stack reaches
CREATE_COMPLETE, go to the stack’s Outputs tab and copy the Role ARN value.
Option B — Terraform
If you manage infrastructure with Terraform, a .tf module is available as an
alternative to the CloudFormation template. The External ID and Role ARN inputs and outputs
are the same — substitute the External ID shown in the ConfluOps admin panel, apply,
and paste the resulting Role ARN back into the panel.
2. Add the account in ConfluOps
-
Return to the ConfluOps Admin panel in Confluence.
-
Give the account a display name (e.g. Production or Staging) so you can identify it when configuring widgets.
-
Paste the Role ARN copied from CloudFormation and select the AWS region where your CloudWatch alarms live.
-
Click Save. ConfluOps will validate the role and confirm the account is active.
Adding a widget to a page
Select an alarm
-
On any Confluence page, open the macro browser (
/or Insert → Other macros) and search for CloudWatch Alarm Indicator. -
Select the AWS account you configured in the setup step.
-
A searchable list of alarms from that account will appear. Use the search box to filter by name, then click an alarm to select it.
Display options
After selecting an alarm you can customise how the badge appears:
| Option | Description |
|---|---|
| Display label | Text shown alongside the badge. Defaults to the alarm name; change it to something human-readable like API Error Rate. |
| Label position | Where the label appears relative to the badge: right, left, above, below, inside (replaces the state text), or hidden. |
| Alignment | How the badge is aligned within the macro block: left, center, or right. |
| Auto-refresh | How often the badge refreshes while a viewer has the page open. See Auto-refresh below. |
A live preview updates as you change options so you can see exactly how the badge will look before inserting it.
Alarm states
Each badge reflects the current CloudWatch alarm state:
| State | Badge | Meaning |
|---|---|---|
OK |
OK | The alarm threshold has not been breached. |
ALARM |
ALARM | The alarm threshold has been breached. |
INSUFFICIENT_DATA |
INSUFFICIENT DATA | Not enough data is available to evaluate the alarm. |
Auto-refresh
By default, the badge fetches the alarm state when the page loads and does not update again until the page is reloaded. You can enable automatic background refresh:
| Interval | Use case |
|---|---|
| Off (default) | Status checked on page load only |
| 1 minute | Active incident dashboards |
| 5 minutes | General health monitoring pages |
| 15 minutes | Low-traffic overview pages |
Multiple AWS accounts
ConfluOps supports multiple AWS accounts simultaneously. Each account is configured separately in the admin panel with its own IAM role and External ID. When adding a widget, you choose which account to query — so a single Confluence page can display alarm statuses from Production, Staging, and any other configured account side by side.
Troubleshooting
Badge shows “Account not found”
The AWS account configured for this widget has been deleted from the admin panel. Edit the macro and select a valid account, or re-add the account in the admin panel.
Badge shows “Error fetching alarm”
Possible causes:
- The IAM role ARN or External ID is incorrect — verify them in the admin panel against your CloudFormation stack outputs.
- The alarm name no longer exists in CloudWatch — it may have been renamed or deleted.
-
The IAM role does not have
cloudwatch:DescribeAlarmspermission — re-deploy the CloudFormation stack using the latest template.
No alarms appear in the alarm picker
- Confirm the correct AWS region is selected for the account in the admin panel.
- Verify that alarms exist in that region in the AWS Console.
- Check that the IAM role was successfully created (no errors during account setup).
Alarm list is taking a long time to load
ConfluOps fetches alarm lists live from CloudWatch. If you have a large number of alarms, use the search box to filter by name rather than scrolling through the full list.
Support
For help, questions, or bug reports, please contact: