-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
Metrics - Telegraf - Influx Statsd Protocol Support #664
Comments
Can you use the Dogstatsd package? |
Hey @peterbourgon. Unfortunately the protocol is different. This can be seen in the metric format for dogstatsd, where the tags are placed at the end, instead of after the metric name in CSV format. |
@peterbourgon, I've been doing a little more digging, and I've found two potential options that I can currently use:
I think I will go with Edit : Update : |
How would you suggest we manage the different wire protocols, if they're all in the same package? Different types and constructors? |
There are two options that I can think of off the top of my head :
Both seem quite messy, especially since DogStatsD is more independent from StatsD compared with Influx StatsD. Just some suggestions. Let me know what you think. |
I'd like to try out a package structure that better optimizes for minimizing dependencies. If all of those implementations can be made using only stdlib dependencies, then I think it'd be great if they can just be types in the same Does that make sense? (I fully acknowledge this isn't currently the case throughout Go kit!) |
That makes sense, @peterbourgon. I believe (inferring that internal dependencies are not third-party dependencies) the current case is that both of the currently implemented protocols (i.e. |
Hmm, I guess the tradition now is separate packages altogether. Three choices:
|
@peterbourgon, if creating an additional package is not a problem, I would agree with your preference. One thing, as I noted earlier, is that the Influx StatsD is not as independent as DogStatsD, and seems to be a protocol created by Telegraf (i.e. Influx Data) to support tags / additional features using StatsD protocol. So, seeing as it's a potentially temporary protocol, I could see it either as a separate package that separates concerns in case the protocol is deprecated in the future, or implementing tag support in I still see your preference as the best option. 😅 |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
I need to send metrics to a telegraf client that supports the Influx Statsd protocol.
I know that the metrics libraries that go-kit supports are just the standard protocols, so my question is if go-kit is opposed to adding support for the protocol, what would be the best way to create my own package using go-kit's
statsd
package and just adding tag support? I can't take thestatsd
package directly and make my modifications because the package uses internal libraries. Thanks!The text was updated successfully, but these errors were encountered: