Skip to content

Demo showing usage of Camunda, Java, SpringBoot, Kibana, Elaticsearch and Camel

License

Notifications You must be signed in to change notification settings

KamilWitkowski7/Camunda-demo

Repository files navigation

Camunda-demo

Demo showing usage of Camunda, Java, SpringBoot, Kibana, Elaticsearch, Swagger, Docker, Ansible and Camel

In this demo I am simulating vindication process. I am showing how many money we managed to retrieve/lost due to debt on Kibana dashboard. I am also showing how many manual Camunda's processes there are currently. This manual process can be for example a task to send a letter to remind our client to pay his debt.

Architecture

Architecture

1. Build apps in this order via mvn clena install

  1. camel-debt-collection
  2. camunda
  3. event-aggregator

2. Start on docker RabbitMQ

Command:

docker run -v rabbitmq-data:/var/lib/rabbitmq -d --hostname my-rabbit --name rabbit-demo -p 8090:15672 -p 5672:5672 rabbitmq:3-management

3. Configure RabbitMQ manually or via ansible

Configuring via ansible

If you want to configure it via ansible playbook - run the script on localhost that is located in "RabbitMQ\Config RabbitMQ via Ansible" directory.

ansible-playbook configureRabbitmq.yml

If problem occurs, try this command with sudo, or with --ask-sudo-pass option.

Configuring via RabbitMQ console

If you want to configure it via RabbitMQ console visit http://localhost:8090/#/queues Follow steps on screenshot that are located in "RabbitMQ\Config RabbitMQ via Rabbit Console" directory.

4. Start Elasticsearch and Kibana via docker

In "docker\Elasticsearch-Kibana" directory run:

docker-compose up

You can use -d option additionally if you prefer.

5. Start all spring-boot aplication: Camunda, Event-aggregator and Camel-debt-collection.

6. Upload BPMN diagram for Camunda

Diagram is located in main directory "Camunda-GitHub-example.bpmn" file.

You can upload it via "Camunda Modeller" desktop application via "Deploy Current Diagram" option.

Camunda Modeller

Camunda Modeller

Name can be random.

Url should be: http://localhost:8180/camunda/resources/engine/default/deployment/create

Authentication: None

7. Prepare test data for Elasticsearch

Go to Swagger in browser: http://localhost:8087/camel-debt/swagger-ui.html#/default/REST You can send default request once.

8. Configure Kibana

In browser go to: http://localhost:5601/app/kibana#/management/kibana/objects?_g=() Select "Import" and choose "export.json" file located in "docker\Elasticsearch-Kibana" directory.

9. Watching the results

The BPMN process output differ upon is policyNumber ending with digit 0 or another one.

Swagger

Camunda

To see what happens visit Camunda: http://localhost:8180/camunda (kermit/piggy) You then go to: http://localhost:8180/camunda/app/cockpit/default/#/processes

And select "DebtCollectionProcess3" - now you see every process currently executing.

Camunda

Kibana

Go to: http://localhost:5601/app/kibana#/dashboards?_g=() select Vindication and change Kibana default time range in the upper right corner to Absolute from 2018 to 2020.

The visualization on left operates on DueDate param from camel-debt Swagger, by default it is <DueDate>2019-12-01</DueDate>. The visualization on right operates on "startTime" of process.

Architecture

About

Demo showing usage of Camunda, Java, SpringBoot, Kibana, Elaticsearch and Camel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages