Story #13048

Refactor crunch2 logging

Added by Tom Clegg 10 months ago. Updated 1 day ago.

Status:
New
Priority:
Normal
Assigned To:
-
Category:
-
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Story points:
2.0

Description

Functionally, source:services/crunch-run is doing a reasonable job. However, the way it's implemented makes it difficult to make some of the changes we want.

Relevant issues
  • #10181 save logs to keep periodically while a container is running (not just after it exits & saves staged outputs)
  • #13005 timestamps are sometimes wrong/confusing because of throttle behavior
  • #13100 source:services/crunch-run and source:sdk/go/crunchrunner should drop their custom manifest-writing code, now that we have generalized write support in #12483
  • The implementation is more complicated / harder to follow than it should be, given the low complexity of the problem it's solving
Proposed improvements
  • Refactor the various functional aspects (add timestamps, throttle, write to apiserver) into modular parts that communicate through simple interfaces like io.Writer.
  • Use io.MultiWriter from stdlib, instead of custom routing built into the processing modules.
  • Use (*arvados.Collection)FileSystem() to open/write log files (and staged outputs? → delete upload*.go)
  • Drop the pretense of splitting long lines (apparently this isn't needed; MaxLogLine seems to have been disconnected 2 years ago in b719ef57055ba2fd06c7a1377cc0d47ee5df935e)

Related issues

Related to Arvados - Feature #10181: Crunch job output logging improvement storiesResolved2017-02-16

Related to Arvados - Bug #13005: [Crunch2] All stdout gets the same timestamp and other logging problemsNew

Related to Arvados - Bug #13100: [crunch-run] Replace custom manifest-writing code with collectionFSResolved2018-03-15

Associated revisions

Revision 95be914a
Added by Tom Clegg 8 months ago

Merge branch '13100-crunch-run-output'

fixes #13100
fixes #11583
fixes #12606
refs #13048

Arvados-DCO-1.1-Signed-off-by: Tom Clegg <>

History

#1 Updated by Tom Clegg 10 months ago

  • Related to Feature #10181: Crunch job output logging improvement stories added

#2 Updated by Tom Clegg 10 months ago

  • Related to Bug #13005: [Crunch2] All stdout gets the same timestamp and other logging problems added

#3 Updated by Tom Clegg 10 months ago

  • Description updated (diff)

#4 Updated by Tom Morris 10 months ago

  • Tracker changed from Bug to Story
  • Target version set to Arvados Future Sprints
  • Story points set to 2.0

#5 Updated by Tom Clegg 9 months ago

  • Related to Bug #13100: [crunch-run] Replace custom manifest-writing code with collectionFS added

#6 Updated by Tom Clegg 1 day ago

  • Description updated (diff)

Also available in: Atom PDF