-
Notifications
You must be signed in to change notification settings - Fork 17
Create a skeleton shipper executable #6
Comments
Okay, finally digging into this and how it should work. I'm kind of working on the assumption that the first PR/commit will literally be a gRPC skeleton with some basic server code. However, I'm not quite sure what the interface between the gRPC server and the memory queue is supposed to look like. |
Let's not worry about the interface to the memory queue yet. Let's just get an executable with a gRPC server running. We can sort out how the memory queue connects gRPC interface as part of #7. Once we have all the gRPC scaffolding done, you can move onto #11 and leave the output pipeline as part of #7 |
So, now that I have a basic shipper up, I'm looking at the http/pprof requirement here. The elastic-agent actually has a bunch of the init/management code in |
Not a bad idea, that code already has the signal handling setup and will probably use the agent policy config format (what the shipper should use). Might be a bit of work though, I'd ask the control plane team what they think and if it's a good idea create a separate issue to do it. |
@elastic/elastic-agent-control-plane Do we have any opinions on this?
|
Thanks for the ping, this is good timing indeed, last Friday. I was looking at our
I think having a library that makes little assumption would make a lot of sense.
@fearful-symmetry creates an issue I would be happy to drop a few things on our side. |
Note: the code was just an experiment, take it with a grain of salt. :) |
I think once #29 is merged, we should be able to close this? |
The only additional thing I think we are missing is signal handling for graceful shutdown. This is provided in the libbeat service package for example: https://github.com/elastic/beats/blob/main/libbeat/service/service.go#L42 We could do that under this issue or make a separate issue for it. |
Ah, I knew I was forgetting something. |
The merged queue monitor also includes a signal handler for shutdown, so we should be good here? |
Yes, closing. Thanks! |
Create a skeleton shipper executable that:
Attempt to reuse as much of the agent code as we can for these tasks: elastic/elastic-agent#276
The text was updated successfully, but these errors were encountered: