-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Support Multiple Config Files/An import statement #2701
Comments
/cc @pjanotti I think the proposed "config source" will address this. |
@pjanotti Can you give details on this config source thing? |
See #2857 for config source proposal. |
Notes from SIG meeting:
|
From 05/26 Collector SIG meeting:
|
Google (GCE) is working on this problem right now in our Ops Agent. While in theory we can generate an OT config file regardless of where this feature ends up we'd much prefer to align our design with the OT design as OT Collector is being used in many contexts within Google (not just Ops Agent). Let us know how to participate. This is actually a complex issue and merits a design doc. If our Ops Agent design doc approaches the problem generically enough (which I suspect it will) we'll share it in case it's useful for thinking through this. I also enumerated ~12 apps that take on the DRY config paradigm without going so far as to create a virtual programming language. I can share links if helpful. We're approaching it slightly more open-ended: |
@josephflynch We'd be very interested in seeing/hearing your ideas and what you've done in ops agent. Let's all work together on this. |
Friendly ping - Has there been any movement on this recently? |
This has been sitting for a while. We're just about to pick it back up.
When I have something useful I will pass it around. If you like, I'd be
game for a quick video conference on the topic to understand each other's
goals and share ideas. We've been thinking about it for a while but need
to put pen to paper for a design.
Joe Lynch
…On Fri, Aug 13, 2021 at 11:47 AM Travis Tomsu ***@***.***> wrote:
Friendly ping - Has there been any movement on this recently?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#2701 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACAU6B4NGYLJ2PNTNUGFLL3T4U5CVANCNFSM4ZFMITUQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email>
.
|
This is work in progress. This PR was intended to enable it #3687 |
@bogdandrutu are you planning to work on this issue :) |
@josephflynch this is about to be closed, in case you still need it. |
s/closed/fixed :D |
Feature Request: Configuration can be split into multiple files
It'd be ideal if the collector could work off of a set of configuration files rather than a single one. There are probably two basic ways to accomplish this:
The way this should work is that the collector should evaluate each config file and merge them.
Why is this useful?
As the collector grows, the configurations that users create will get more and more complex. For the same reasons that in school your prof taught you not to put all your C code in one file, its generally useful to organize configuration logically into multiple files.
This is also useful when you have multiple people/entities working on building the final configuration. Consider the following scenario: A few years from now when OTel has truly eaten the world of instrumentation, Ellen and Akshay are building the config for their application. The config for their unified collector must container the following:
Could they concatenate all of these configs together into one file? Definitely. It'd be inconvenient though. Note that each piece of the config has a different owner. This means that updates might come independently. Thus it's useful if they can remain in separate files. Regardless of how the team stores and deploys their config, it'll be easier to manage if they can keep it in multiple files.
Examples in other projects
Fluentd has
@include
and Fluent Bit has@INCLUDE
for importing configuration from other files. https://docs.fluentd.org/configuration/config-file#6-reuse-your-config-the-include-directiveThis is very commonly used.
Merging configs
This bit which will need some discussion.
Ideally, the configurations should be merge-able. This means I can define a processor in config file A and then reference it in a pipeline in config file B. Basically the final configuration is the concatenation of all the configs.
The text was updated successfully, but these errors were encountered: