Processor

Multi-module Spring Boot projects for processing ERP integration messages and persisting them to comerzzia through different messaging technologies.

Purpose

Processing layer for the comerzzia ERP integration ecosystem:

  • Consumes data from various message sources (Kafka, Pub/Sub)

  • Validates and transforms incoming messages

  • Persists data to comerzzia database via integration services

  • Provides monitoring and error handling capabilities

Processing Flow

Messages are consumed from configured sources, validated, transformed, and persisted to comerzzia database through integration services.

Diagram

Technologies

  • Java 8+

  • Maven 3.6+

  • Spring Boot 2.7.18

Applications implementations

Kafka Processor

Asynchronous processing via Apache Kafka topics.

Pub/Sub Processor

Asynchronous processing via Google Cloud Pub/Sub topics.

Common library for processing control services

Java JAR library. Shared utilities, models, and configurable components for entities processing. Common Library

OpenAPI REST API Documentation

Observability / health check

  • Spring Boot Actuator

    • Health checks, metrics, and application info endpoints

    • Prometheus metrics export

    • management port/base path :8081/manage

    • json logs using "jsonlogs" spring profile

  • Monitor-UI embedded

Common Configuration

Environment Variables

Required for all modules:

 uidActividad=<comerzzia_activity_uid>
 uidInstancia=<comerzzia_instance_uid>

Database Configuration

All modules requires comerzzia database configuration via comerzzia.xml in java classpath or in COMERZZIA_HOME path.

Error Handling

All modules include comprehensive error handling with:

  • Configurable retry logic

  • Dedicated error topics/directories for failed messages

  • Error analysis endpoints with statistics and trends

  • Full error context and correlation tracking