Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve docs #1579

Merged
merged 2 commits into from
Aug 24, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
** xref:user-guide/first-steps.adoc[First steps]
** xref:user-guide/bootstrap.adoc[Bootstrap]
** xref:user-guide/cdi.adoc[CDI]
** xref:user-guide/observability.adoc[Observability]
** xref:user-guide/native-mode.adoc[Native mode]
** xref:user-guide/examples.adoc[Examples]
* xref:contributor-guide/index.adoc[Contributor guide]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,13 @@ because the test project needs to get finished. You need to build `poms/bom` and
9. Complete the integration test module under `integration-tests/foo-abc`. Make sure you test both the consumer and the
producer of the component (if the component supports both). Make sure the tests are passing both in the JVM mode
(`mvn test`) and in the native mode (`mvn verify -Pnative`).
+
[TIP]
====
If your test application is going to be configured via `camel.component.*` properties, you need to add the
`camel-quarkus-main` dependency to the test project. See the xref:user-guide/bootstrap.adoc[Bootstrap] section of
the User guide for more details.
====

10. In case of problems, consult the https://quarkus.io/guides/extension-authors-guide[Quarkus extension author's guide],
ask for help in the given GitHub issue or via https://gitter.im/apache/camel-quarkus[Camel Quarkus chat].
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,13 @@ $ cd integration-tests/foo
$ mvn clean verify -Pnative
----
+
[TIP]
====
If your test application is going to be configured via `camel.component.*` properties, you need to add the
`camel-quarkus-main` dependency to the test project. See the xref:user-guide/bootstrap.adoc[Bootstrap] section of
the User guide for more details.
====
+
Consider shifting some tasks from runtime to build time.
The https://quarkus.io/guides/extension-authors-guide[Quarkus extension author's guide] may be a good ally for this.

Expand Down
19 changes: 16 additions & 3 deletions docs/modules/ROOT/pages/index.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,20 @@
= Apache Camel extensions for Quarkus

This project hosts the efforts to port and package the 280+ Camel components as Quarkus extensions.
This project aims to bring the awesome integration capabilities of https://camel.apache.org/manual/latest/[Apache Camel]
and its vast https://camel.apache.org/components/latest/[component library] to the
https://quarkus.io/[Quarkus runtime].

https://quarkus.io/[Quarkus] is a Java platform offering fast boot times and low memory footprint. It targets both stock JVMs (OpenJDK in the first place) and https://www.graalvm.org/[GraalVM].
This enables users to take advantage of the performance benefits, https://quarkus.io/vision/developer-joy[developer joy]
and the https://quarkus.io/vision/container-first[container first ethos] that Quarkus provides.

https://quarkus.io/extensions/[Quarkus extensions] are units of Quarkus distribution. They configure, boot and integrate a technology (in our case Camel components) into your Quarkus application. You will typically use them as dependencies in your project.
Camel Quarkus provides xref:reference/index.adoc[Quarkus extensions] for many of the Camel components.

Camel Quarkus also takes advantage of the many performance improvements made in Camel 3, which results in a lower memory footprint, less reliance on reflection (which is good for native application support) and faster startup times.

You can define Camel routes using the Java DSL, XML & Kotlin (see the xref:user-guide/examples.adoc[examples]).

=== Where to go next?

* xref:user-guide/index.adoc[User guide]
* xref:contributor-guide/index.adoc[Contributor guide]
* xref:reference/index.adoc[Extensions reference]
36 changes: 36 additions & 0 deletions docs/modules/ROOT/pages/user-guide/observability.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
= Observability

== Health & liveness checks

Health & liveness checks are supported via the
xref:reference/extensions/microprofile-health.html[MicroProfile Health] extension. They can be configured via the
https://camel.apache.org/manual/latest/health-check.html[Camel Health] API or via
https://quarkus.io/guides/microprofile-health[Quarkus MicroProfile Health].

All configured checks are available on the standard MicroProfile Health endpoint URLs:

* http://localhost:8080/health
* http://localhost:8080/health/live
* http://localhost:8080/health/ready

There's an example project which demonstrates health checks: https://github.com/apache/camel-quarkus/tree/master/examples/health

== Metrics

We provide the xref:reference/extensions/microprofile-metrics.html[MicroProfile Metrics] extension which integrates with
https://quarkus.io/guides/microprofile-metrics[Quarkus MicroProfile Metrics] under the hood. Some basic Camel metrics
are provided for you out of the box, and these can be supplemented by configuring additional metrics in your routes.

Metrics are available on the standard MicroProfile metrics endpoint:

* http://localhost:8080/metrics

== Tracing

xref:reference/extensions/opentracing.html[Camel Quarkus OpenTracing extension] integrates with the
https://quarkus.io/guides/opentracing[Quarkus OpenTracing extension]. All you need to do is set up the required
https://quarkus.io/guides/opentracing#create-the-configuration[configuration] properties and an `OpenTracingTracer`
will get automatically added to the registry for Camel to use.

There's an example project demonstrating the above features here:
https://github.com/apache/camel-quarkus/tree/master/examples/observability