Launch
The 10x Engine runs in an extensible array of environments including container, edge, CI/CD, and dev environments.
The Java Launcher API provides a simple interface for launching different flavors of the 10x engine from a range of entry points, including web servers, serverless functions, Kubernetes DaemonSets, CI/CD pipelines, and local development setups.
Command Line
The command line launcher provide an easy way to start the run and compile pipelines using launch arguments within dev, test and CI/CD environments.
Launcher code: RunCloud.java.
Install: Win/Nix/OSX/Docker.
Edge
The edge launcher starts a run pipeline using edge (i.e., Graal based) and JIT-edge (i.e., Hotspot based) flavors for edge apps executing as part of k8s daemonsets.
Launcher code: RunEdge.java.
Edge apps: Reporter, Regulator, Optimizer.
Quarkus
The Quarkus launcher executes run pipelines in response to REST requests within Cloud and k8s environments.
Launcher code: Pipeline.java.
Deploy: k8s Chart.
Example app: Storage Streamer.
The Quarkus launcher exposes REST endpoints on port 8080:
Storage Streamer Endpoints
POST /streamer/index
Indexes a file from object storage for efficient querying.
- Method: POST
- Content-Type: application/json
- Request Body Fields:
readContainer(string, required): Source container/bucket namereadObject(string, required): Source object/file nameobjectStorageName(string, optional): Object storage provider namewriteContainer(string, optional): Target container for index output
- Response:
200 OKon success
POST /streamer/query
Queries indexed log data from object storage.
- Method: POST
- Content-Type: application/json
- Request Body Fields:
name(string, optional): Query name for trackingtarget(string, optional): Target datasetfrom(string, optional): Start timestamp for query rangeto(string, optional): End timestamp for query rangesearch(string, optional): Search query stringfilters(list of strings, optional): Additional filter conditionsobjectStorageName(string, optional): Object storage provider namereadContainer(string, optional): Container/bucket to queryindexContainer(string, optional): Index container locationprocessingTime(string, optional): Processing time limitresultSize(string, optional): Maximum result size limit
- Response:
200 OKwith query results
Health Endpoints
GET /health/live
Kubernetes liveness probe. Returns 200 OK with "UP" if the pod is alive.
GET /health/ready
Kubernetes readiness probe with load-based traffic routing.
- Response:
200 OKwith "READY" when load is below threshold,503 Service Unavailablewith "NOT READY" when at capacity - Configuration:
tenx.quarkus.readiness.threshold(default: 90%)
GET /health/started
Kubernetes startup probe. Returns 200 OK with "STARTED" when application has completed startup.
Metrics Endpoints
GET /metrics/load
Returns current pipeline executor load metrics.
- Response: JSON object with metrics: