You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 16, 2022. It is now read-only.
The ZIO ZMX library should expose a small number of core abstractions, primarily the Metrics service in the package.scala file, and then specific implementations of that service in appropriate packages (e.g. a statsd implementation in the zio.zmx.stats package). Everything else that is used to implement these services should be package private to provide a clean API for users and flexibility to evolve implementation details.
This ticket is to reorganize the package structure of the project as follows:
Rename the metrics package to be the statsd package
Rename UDPClient to StatsdClient and UDPClientUnsafe to StatsdClientUnsafe for clarity since UDP is a communication protocol and this package is really concerned with implementation details that are specific to statsd
Move the Metrics.live service in the zio.zmx package object to the zio.zmx.statsd package object since this implementation is specific to statsd
Move the data types in the MetricsDataModel and MetricsConfigDataModel traits to be top level data types within the zio.zmx package and delete the trait. Since the trait is not used anywhere except being extended in the package object this should be the same and will make it easier for users to find these data types.
Other than the live method in zio.zmx.statsd above make sure everything in any of the zio.zmx sub-packages (e.g. diagnostics, fibers, graph, parser) is private[zmx].
After these changes generating ScalaDoc for ZIO ZMX should produce documentation that only shows the values in the zio.zmx package object, the data types currently in MetricsModel and MetricsDataModel, and the live service in the zio.zmx.statsd package.
The text was updated successfully, but these errors were encountered:
@lbdlbdlbdl Hello - Are you currently working on this ? - I am asking because it kind of falls in line with the work I am doing to align the prometheus and the statsd API. see #155
The ZIO ZMX library should expose a small number of core abstractions, primarily the
Metrics
service in thepackage.scala
file, and then specific implementations of that service in appropriate packages (e.g. a statsd implementation in thezio.zmx.stats
package). Everything else that is used to implement these services should be package private to provide a clean API for users and flexibility to evolve implementation details.This ticket is to reorganize the package structure of the project as follows:
metrics
package to be thestatsd
packageUDPClient
toStatsdClient
andUDPClientUnsafe
toStatsdClientUnsafe
for clarity since UDP is a communication protocol and this package is really concerned with implementation details that are specific to statsdMetrics.live
service in thezio.zmx
package object to thezio.zmx.statsd
package object since this implementation is specific to statsdMetricsDataModel
andMetricsConfigDataModel
traits to be top level data types within thezio.zmx
package and delete the trait. Since the trait is not used anywhere except being extended in the package object this should be the same and will make it easier for users to find these data types.live
method inzio.zmx.statsd
above make sure everything in any of thezio.zmx
sub-packages (e.g.diagnostics
,fibers
,graph
,parser
) isprivate[zmx]
.After these changes generating ScalaDoc for ZIO ZMX should produce documentation that only shows the values in the
zio.zmx
package object, the data types currently inMetricsModel
andMetricsDataModel
, and thelive
service in thezio.zmx.statsd
package.The text was updated successfully, but these errors were encountered: