nelkinda / health-go

A golang implementation of the upcoming IETF RFC Health Check Response Format for HTTP APIs
MIT License
34 stars 7 forks source link

added tracer and ctx for HealthChecks method #4

Closed Apologiz closed 10 months ago

christianhujer commented 4 years ago

Thank you very much for your contribution.

Is it possible to move the dependency to opentracing into a module of its own so that users which are not interested in opentracing because they do not want/need tracing or want tracing to be performed in a different way do not need to depend on opentracing? Maybe using the strategy design pattern? We can discuss, if this is not possible for you, I can do that instead.

And is it possible to implement this in a way that it doesn't break the existing API? If I merge this PR, I would have to change all my services that use health-go, isn't it, and I fear other users would have to do that, too.

Apologiz commented 4 years ago

Is it possible to move the dependency to opentracing into a module of its own so that users which are not interested in opentracing because they do not want/need tracing or want tracing to be performed in a different way do not need to depend on opentracing? Maybe using the strategy design pattern? We can discuss, if this is not possible for you, I can do that instead.

Yes, we can add the ability to write plugins to the library

And is it possible to implement this in a way that it doesn't break the existing API? If I merge this PR, I would have to change all my services that use health-go, isn't it, and I fear other users would have to do that, too.

It is possible, but it seems to me that the mechanism with Option is more universal and does not require much labor for code changes when switching to a new release

I would not want to do many functions that change the state of the structure since it is more difficult to maintain and not universally :)

Apologiz commented 4 years ago

I removed Option to backward compatibility, but I don't really like it)