Skip to main content

Documentation Index

Fetch the complete documentation index at: https://platform.docs.zenoo.com/llms.txt

Use this file to discover all available pages before exploring further.

Configuration properties

Execution

  • hub.execution.expiration Default: 1h
The maximum execution duration before expiration. If enable-execution-log profile is active, a separate execution events logger writes out details of all the execution events.

Http client

Configure built-in HTTP client
  • hub.http.maxIdleTime Default: 180
  • hub.http.maxLifeTime Default: 600
  • hub.http.maxInMemorySize Default: 10485760
  • hub.http.maxConnections Default: 500

Topic creation

If create-topics profile is active, the topics are configured using the following properties
  • hub.topics.partitions Default: 10
The number of partitions
  • hub.topics.replicas Default: none
The number of replicas
  • hub.topics.retention Default: 8H
The data retention duration

Gateway

  • hub.gateway.max-in-memory Default: 10MB
Maximum size of request body that can be buffered in memory. This setting controls the buffer limit for handling large payloads like base64 content in API requests.

Admin API security

  • hub.security.user.name Default: admin
An admin user name
  • hub.security.user.password Default: auto-generated
An admin user password

Client API security

  • jwt.key Default: auto-generated
A secret key used for generating JWT tokens.
  • jwt.expiration Default: 1800
JWT tokens generated with specified expiration.

Kafka streams

  • hub.streams.prefix (Required) Default: none
The prefix is used for isolating Hub clusters running within the same Kafka broker. It uses the setting as a prefix for Kafka topics. For example, a Hub cluster with a testing prefix would use topics like testing-execution-events, testing-exchanges, etc. The prefix can contain alphanumeric characters, .(dot), -(hyphen), and _(underscore).
  • hub.streams.application (Required) Default: hub
The application name used together with prefix to generate a unique application ID. Each stream processing application must have a unique ID. The same ID must be given to all instances of the application. This ID is used in the following places to isolate resources used by the application from others:
  • As the default Kafka consumer and producer client.id prefix
  • As the Kafka consumer group.id for coordination
  • As the name of the subdirectory in the state directory (hub.streams.state.dir)
  • As the prefix of internal Kafka topic names

  • hub.streams.request-timeout-ms Default: 60000
The configuration controls the maximum amount of time the client will wait for the response of a request. If the response is not received before the timeout elapses the client will resend the request if necessary or fail the request if retries are exhausted.
  • hub.streams.producer.max-request-size Default: 1048576
The maximum size of a request in bytes. This setting will limit the number of record batches the producer will send in a single request to avoid sending huge requests. This is also effectively a cap on the maximum uncompressed record batch size. Note that the server has its own cap on the record batch size (after compression if compression is enabled) which may be different from this.
  • hub.streams.state.dir Default: /tmp/kafka-streams
Directory location for state stores.
  • hub.streams.state.cleanup-on-start Default: false
Clean up application’s local state directory when Kafka Streams start.
  • hub.streams.state.cleanup-on-stop Default: false
Clean up application’s local state directory when Kafka Streams shut down.

File Uploader

  • hub.uploader.cache.dir
  • Default: ./cache
Directory location for cached files.

Component config validation

  • hub.components.validateConfig
  • Default: true
If set to true, the Hub will validate the configuration of an exposed component/target upon registration.

Cloud Provider Configuration

The Hub uses a cloud-agnostic storage and configuration layer that supports multiple providers through configuration.
  • hub.cloud.provider.type Default: aws Options: aws, local
Selects which cloud provider implementation to use for component storage, configuration management, and API key storage.

AWS Provider

When using AWS as the cloud provider (hub.cloud.provider.type=aws), the following configuration properties are available:
  • hub.aws.region (Required) The AWS region for all services (DynamoDB, Secrets Manager, etc.)
  • hub.aws.dynamodb.prefix (Required) Prefix for DynamoDB table names (e.g., zenoo-hub creates zenoo-hub-components, zenoo-hub-api-key-lookup, zenoo-hub-sharables)
  • hub.aws.dynamodb.createTables Default: true Automatically create required DynamoDB tables on startup
  • hub.aws.secrets.prefix (Required) Prefix for secret names in AWS Secrets Manager
  • hub.aws.secrets.cache Default: true Enable in-memory caching of secrets
  • hub.aws.secrets.cacheTtl Default: 300s Time-to-live for cached secrets
For a complete reference of all cloud provider configuration properties, including multi-region replication, retry strategies, and performance tuning, see the Cloud Provider Configuration Reference. For local development using LocalStack, see the Local Development Guide.

Karaf Configuration

  • karaf.enabled
  • Default: false
Controls whether the Karaf container is enabled. Set to true to enable Karaf functionality.
  • karaf.home
  • Default: .karaf
The home directory for Apache Karaf installation. This directory contains:
  • system/ - System bundles
  • deploy/ - Hot deployment directory

  • karaf.base
  • Default: /tmp/karaf-base
The base directory for Apache Karaf instance. This directory contains:
  • etc/ - Configuration files
  • data/ - Runtime data
  • log/ - Log files