Camunda 7 Optimize Not Showing Data – Causes & Fixes (Production Guide)

 Introduction

A very common and confusing issue in Camunda 7 setups is:

Camunda Optimize is running, but no data is visible

Typical symptoms

  • Optimize UI loads correctly

  • Dashboards show “No data available”

  • Reports remain empty

  • No obvious error in Optimize UI

  • Issue appears mainly after deployment or in production

👉 In most cases, Optimize is healthy, but data is not being imported correctly.

This blog explains:

  • How Optimize gets its data

  • Why data does not appear

  • The most common root causes

  • Clear fixes you can apply immediately


How Camunda Optimize Works (Quick Architecture)

Camunda Optimize does NOT read directly from the Camunda database.

Data flow

Camunda Engine ↓ (History API) Optimize Importer ↓ Elasticsearch ↓ Optimize UI

👉 If any step fails, Optimize shows no data.


Root Cause #1: History Level Too Low (MOST COMMON)

Problem

Camunda engine history level is set to:

  • none

  • activity

Optimize requires FULL history.

How to check

In camunda.cfg.xml or application.yml:

<property name="history">full</property>

Fix

✔ Set history level to full
✔ Restart Camunda
✔ Wait for new data (history is NOT retroactive)

⚠️ Old instances will not appear if history was previously disabled.


Root Cause #2: History Cleanup Deleting Data

Problem

History cleanup is enabled with a very small TTL (e.g. 1–3 days).

Result

  • Data is deleted before Optimize imports it

  • Dashboards stay empty

Fix

✔ Increase TTL:

History Time To Live = 3090 days

✔ Ensure cleanup runs after Optimize import


Root Cause #3: Optimize Importer Not Running

Problem

Optimize application is running, but importer threads are stopped.

How to check logs

Look for:

import finished successfully

Or errors like:

Cannot fetch historic process instances

Fix

✔ Check Optimize logs
✔ Verify engine REST endpoint
✔ Restart Optimize service


Root Cause #4: Optimize Not Connected to the Correct Engine

Problem

Optimize is pointing to:

  • Wrong Camunda engine URL

  • Wrong REST API endpoint

  • Wrong credentials

Check environment.yml

engines: - name: camunda-engine rest: http://camunda:8080/engine-rest

Fix

✔ Validate REST URL
✔ Test /engine-rest/engine manually
✔ Ensure credentials are correct


Root Cause #5: Elasticsearch Issues

Problem

Elasticsearch is:

  • Not running

  • Running but read-only

  • Out of disk space

  • Version incompatible

Symptoms

  • Optimize UI loads

  • No data stored

Fix

✔ Check Elasticsearch health:

GET /_cluster/health

✔ Ensure:

  • Disk not full

  • Indices writable

  • Supported version


Root Cause #6: Optimize Version Mismatch

Problem

Camunda engine and Optimize versions do not match.

Example:

  • Camunda 7.18

  • Optimize 7.14

Fix

✔ Always align versions:

Camunda 7.x ⇄ Optimize 7.x (same minor version)

Root Cause #7: Optimize Importing Only New Data

Problem

Optimize does not import old history automatically.

Result

  • Existing completed processes do not appear

  • Only new instances after Optimize start are visible

Fix

✔ Restart Optimize with import enabled
✔ Accept that old data may not appear
✔ Plan Optimize deployment early in project lifecycle


Debug Checklist (Step-by-Step)

  1. Check Camunda history level = full

  2. Verify new processes are completing

  3. Check Optimize logs (importer status)

  4. Verify REST engine URL

  5. Check Elasticsearch health

  6. Validate version compatibility

  7. Check history cleanup TTL

  8. Wait for import cycle (not instant)


Production Best Practices

✔ Enable history from day one
✔ Use TTL ≥ 30 days
✔ Monitor Optimize importer logs
✔ Monitor Elasticsearch disk usage
✔ Keep Camunda & Optimize versions aligned
✔ Do NOT expect Optimize to show old data magically
✔ Validate Optimize after every deployment


Common Anti-Patterns 🚨

❌ History level = activity
❌ Very small TTL (1–2 days)
❌ Deploy Optimize months later
❌ Ignoring Elasticsearch health
❌ Version mismatch
❌ Expecting instant dashboards


Interview Question (Very Common)

Q: Why is Optimize empty even though processes are running?
A: Because Optimize depends on FULL history + importer + Elasticsearch, and one of them is misconfigured.


Conclusion

If Camunda 7 Optimize shows no data, the problem is almost always:

  • history disabled

  • importer not running

  • Elasticsearch issue

  • wrong configuration

  • version mismatch

👉 Optimize is not real-time BI — it depends entirely on correct history and imports.

Fix the pipeline, and the data appears.

💼 Professional Support Available

If you are facing issues in real projects related to enterprise backend development or workflow automation, I provide paid consulting, production debugging, project support, and focused trainings.

Technologies covered include Java, Spring Boot, PL/SQL, Azure, and workflow automation (jBPM, Camunda BPM, RHPAM).

📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com

🌐 Website: IT Trainings | Digital metal podium     

Comments

Popular posts from this blog

jBPM Installation Guide: Step by Step Setup

Scopes of Signal in jBPM

OOPs Concepts in Java | English | Object Oriented Programming Explained