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.

Integration API Processor

Synchronous REST processor — receives entity data via HTTP and persists directly to comerzzia database, no broker required.

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 require database connection configured via Spring Boot datasource properties in application.yml or profile-specific files (e.g., application-dev.yml).

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