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

Use quarkus-google-cloud-services gRCP common lib to avoid duplication #57

Open
loicmathieu opened this issue Apr 13, 2023 · 2 comments

Comments

@loicmathieu
Copy link

Hi,

The Quarkus Google Cloud Services extension pack contains GraalVM substitutions for gRCP and Google Cloud Auth support.
It is already used by the Micrometer Google Cloud exporter, it could also be used by the Opentelemetry Google Cloud exported provided in this extension.

The substitution are here: https://github.com/quarkiverse/quarkus-google-cloud-services/blob/main/common/grpc/src/main/java/io/quarkiverse/googlecloudservices/common/grpc/runtime/graal/GoogleApiGaxGrpcSubstitutions.java

It would avoid having duplicate substitution and possibly having native configuration on multiple modules that may be in conflict.

Note that Google Cloud have native support that may be use instead of providing our own, I still have on my todo list to upstream the substitution on our side.

We can discuss this on Zulip if needed.

t0xa added a commit to t0xa/quarkus-opentelemetry-exporter that referenced this issue Apr 14, 2023
@t0xa
Copy link
Collaborator

t0xa commented Apr 16, 2023

Hello Loïc,

I've made changes you've suggested.

As usual there is an issue with Native build - https://github.com/t0xa/quarkus-opentelemetry-exporter/actions/runs/4697207041/jobs/8328030406

I've compared substitutions defined in quarkus-google-cloud-services gRCP common and in the current version. The only difference is the usage of mtls Channel Credentials (see below). I've tried to move this logic into quarkus-google-cloud-services gRCP common locally but it still gives me an error.

Any pointers will be very helpful.

@loicmathieu
Copy link
Author

I copied the missing substitution for InternalLoggerFactory, see quarkiverse/quarkus-google-cloud-services#414

As far as I remember the difference for between the two substitutions is around automatic auth for AppEngine, as AppEngine didn't support native image I just disable its auth.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants