---
icon: material/set-merge
---

Input integrations provide an extensible mechanisms for reading log/trace events from new [analyzer](https://doc.log10x.com/run/input/analyzer/), [forwarder](https://doc.log10x.com/run/input/forwarder/) and [object storage](https://doc.log10x.com/run/input/objectStorage/) sources using industry standard Java frameworks.

To specify .jar files to dynamically load into the host JVM see the [jarfiles](https://doc.log10x.com/run/bootstrap/#jarfiles) argument.

## :fontawesome-brands-java: InputStream

The [I/O Streams](https://docs.oracle.com/javase/tutorial/essential/io/streams.html){target="\_blank"} integration enables reading log/trace events from arbitrary sources via custom [InputStream](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/InputStream.html){target="\_blank"}  and [Reader](https://docs.oracle.com/javase/8/docs/api/java/io/Reader.html){target="\_blank"}  classes.

For example, the `CamelContextInputStream` class
reads data from over 400+ sources via [Apache Camel](https://camel.apache.org/components/), while the `IndexFilterWriter` class generates Bloom filters from TenXObject variable and template information. 
 
:simple-yaml: Config example: [query/stream.yaml](https://github.com/log-10x/config/blob/main/pipelines/run/modules/input/objectStorage/query/stream.yaml){target="\_blank"}.

:fontawesome-brands-java: Code example: `IndexQueryReader.java`.

## :simple-apache: Apache Camel

The [Apache Camel](https://camel.apache.org){target="\_blank"} integration enables [analyzer](https://doc.log10x.com/run/input/analyzer/#extensibility) inputs to read events into the 10x Engine from 400+ data sources using declarative [YAML routes](https://camel.apache.org/manual/routes.html){target="\_blank"}.

:simple-yaml: Config example: [splunk/route.yaml](https://github.com/log-10x/config/blob/main/pipelines/run/modules/input/analyzer/splunk/route.yaml){target="\_blank"}.

:fontawesome-brands-java: Code example: `CamelContextInputStream.java`.

## :material-cloud-upload-outline: Object Storage

The [object storage](https://doc.log10x.com/run/input/objectStorage/#storage-access) integration enables inputs to index and query events matching specified criteria into from an arbitrary blob storage (e.g., AWS S3, Azure blobs) by implementing the `ObjectStorageIndexAccessor` interface.

:simple-yaml: Config example: [objectStorage/settings.yaml](https://github.com/log-10x/config/blob/main/pipelines/run/modules/input/objectStorage/settings.yaml){target="\_blank"}.

:fontawesome-brands-java: Code example: `AWSIndexAccess.java`

