{"action":"created","issue":{"url":"https://api.github.com/repos/bazillion/fuse/issues/65","labels_url":"https://api.github.com/repos/bazillion/fuse/issues/65/labels{/name}","comments_url":"https://api.github.com/repos/bazillion/fuse/issues/65/comments","events_url":"https://api.github.com/repos/bazillion/fuse/issues/65/events","html_url":"https://github.com/bazillion/fuse/pull/65","id":59014476,"number":65,"title":"Replace Debug function with a Debugger interface to permit trace recording.","user":{"login":"smoogle","id":3745889,"avatar_url":"https://avatars.githubusercontent.com/u/3745889?v=3","gravatar_id":"","url":"https://api.github.com/users/smoogle","html_url":"https://github.com/smoogle","followers_url":"https://api.github.com/users/smoogle/followers","following_url":"https://api.github.com/users/smoogle/following{/other_user}","gists_url":"https://api.github.com/users/smoogle/gists{/gist_id}","starred_url":"https://api.github.com/users/smoogle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smoogle/subscriptions","organizations_url":"https://api.github.com/users/smoogle/orgs","repos_url":"https://api.github.com/users/smoogle/repos","events_url":"https://api.github.com/users/smoogle/events{/privacy}","received_events_url":"https://api.github.com/users/smoogle/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bazillion/fuse/labels/type:enhancement","name":"type:enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-02-26T03:54:06Z","updated_at":"2015-02-26T15:02:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/bazillion/fuse/pulls/65","html_url":"https://github.com/bazillion/fuse/pull/65","diff_url":"https://github.com/bazillion/fuse/pull/65.diff","patch_url":"https://github.com/bazillion/fuse/pull/65.patch"},"body":"Debug is useful for getting additional output, but in some environments it would be more powerful to have information on the actual trace spans. \r\n\r\nReplace the current function with an interface that supports Begin/End/Print."},"comment":{"url":"https://api.github.com/repos/bazillion/fuse/issues/comments/76192735","html_url":"https://github.com/bazillion/fuse/pull/65#issuecomment-76192735","issue_url":"https://api.github.com/repos/bazillion/fuse/issues/65","id":76192735,"user":{"login":"tv42","id":419909,"avatar_url":"https://avatars.githubusercontent.com/u/419909?v=3","gravatar_id":"","url":"https://api.github.com/users/tv42","html_url":"https://github.com/tv42","followers_url":"https://api.github.com/users/tv42/followers","following_url":"https://api.github.com/users/tv42/following{/other_user}","gists_url":"https://api.github.com/users/tv42/gists{/gist_id}","starred_url":"https://api.github.com/users/tv42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tv42/subscriptions","organizations_url":"https://api.github.com/users/tv42/orgs","repos_url":"https://api.github.com/users/tv42/repos","events_url":"https://api.github.com/users/tv42/events{/privacy}","received_events_url":"https://api.github.com/users/tv42/received_events","type":"User","site_admin":false},"created_at":"2015-02-26T15:02:35Z","updated_at":"2015-02-26T15:02:35Z","body":"Thank you. That's enough information that I think you'd be served well enough by having a trace ID in the messages and a good built-in \"end processing\" message, and that's what I wanted to do anyway.\r\nMost likely using http://godoc.org/github.com/codahale/lunk\r\n\r\nThe elapsed time logging I would probably perform in fuse itself, much like http://godoc.org/github.com/codahale/lunk/web\r\n\r\nThe one big thing I don't like about lunk is that it's concept of properties forces a flat structure, but that seems to be a common line of thinking among structured logging advocated, so I guess I'll just go ahead with that.\r\n\r\nCan you look into lunk and see if it matches what you want?"}}