[metrics-bugs] #23549 [Metrics/Website]: Move ExoneraTorServlet to metrics-web

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Jul 19 19:56:51 UTC 2018


#23549: Move ExoneraTorServlet to metrics-web
-----------------------------+------------------------------
 Reporter:  karsten          |          Owner:  metrics-team
     Type:  enhancement      |         Status:  needs_review
 Priority:  Medium           |      Milestone:
Component:  Metrics/Website  |        Version:
 Severity:  Normal           |     Resolution:
 Keywords:  metrics-2018     |  Actual Points:
Parent ID:                   |         Points:
 Reviewer:                   |        Sponsor:
-----------------------------+------------------------------
Changes (by karsten):

 * status:  needs_information => needs_review


Comment:

 I finally put some more thoughts into this ticket after spending some time
 on the related #24296.

 I'm less convinced that moving classes from the ExoneraTor repository to
 the metrics-lib repository in order to use them in Tor Metrics (and
 possibly in a stand-alone version of ExoneraTor) is the best way to go.

 Taking a step back, there are plenty of ways to reuse classes from the
 ExoneraTor repository in Tor Metrics:

  - Copy: We can just copy classes over. Well, okay, let's not.
  - Monorepo: This is an idea that crossed my mind the other week and that
 I still think is a good idea. However, let's not do that yet. Even though
 it would solve this problem.
  - Submodule: We could pull in ExoneraTor as Git submodule in Tor Metrics.
 Not my favorite.
  - Shared library: This is the metrics-lib plan discussed above. Would
 work, but we'd basically advance the technical interface between
 ExoneraTor backend and frontend to a public interface. I don't think we
 need to do this, and we should try to avoid the added effort for
 maintaining a public interface if we can. Note that we can always do that
 later, if we think it's a good idea.
  - Release as dependency: This was iwakeh's idea above, and I think I like
 that better than the shared library plan, for the reason stated above.
 However, `exonerator-2.1.0.jar` is 6.3M large, because it contains all of
 ExoneraTor's dependencies. It's a fat jar.
  - Thin jar as dependency: Based on iwakeh's idea (or maybe this was their
 idea all the time), provide another thin jar file together with
 ExoneraTor's next release and pull that into Tor Metrics. This jar would
 only contain ExoneraTor's own classes and resources but without all those
 other classes (Apache Commons, Jackson, Jetty, Logback, etc.). However, it
 would contain all of ExoneraTor's classes, not a subset. We could use the
 very same approach for Metrics Bot reusing Onionoo's document classes. But
 let's see first if it works for ExoneraTor.
  - What else did I miss?

 Thoughts? Setting to needs_review for the concept, not for actual code.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/23549#comment:12>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the metrics-bugs mailing list