Commit Graph

21 Commits

Author SHA1 Message Date
Brian Picciano
20c6f95091 mlog: refactor to use Clone/Set instead of With pattern, implement CtxSetAll 2019-01-30 16:06:24 -05:00
Brian Picciano
a24262f295 mlog: update function docs 2019-01-25 16:39:57 -05:00
Brian Picciano
e9416dbe2a mlog: update package doc example 2019-01-25 16:29:22 -05:00
Brian Picciano
0e80e1fd3d mlog: remove ErrKV/ErrWithKV, merr.KV/merr.WithValue are used instead 2019-01-15 00:00:24 -05:00
Brian Picciano
33a10a4ac7 mlog: make the map returned from a KVer be read-only and allowed to be nil 2019-01-14 23:58:58 -05:00
Brian Picciano
1562c4e8f6 mlog: redefine KVer to return a map[string]interface, not a KV, to allow other packages to implement KVer without importing mlog 2019-01-14 23:58:55 -05:00
Brian Picciano
57db101c02 mlog: add Logger.WithKV, slightly change Message type to support it 2019-01-12 21:01:00 -05:00
Brian Picciano
0ef6997f40 mlog: fix bug which caused the DefaultHandler to not ever call Flush 2019-01-12 20:10:45 -05:00
Brian Picciano
2f647017b9 mlog: add CtxSet and From functions 2018-11-30 18:50:23 -05:00
Brian Picciano
2e269bb6e7 mlog: refactor to use a Stringer for Message.Description 2018-11-30 18:50:08 -05:00
Brian Picciano
b5c676b5c8 mlog: complete refactor again, eliminating the go-routine, which allowed a lot of other things to fall into place nicely 2018-11-30 16:27:18 -05:00
Brian Picciano
5c85969bc7 mlog: use a Clone and Set methods instead of With methods 2018-10-28 15:09:42 -04:00
Brian Picciano
d9480abb59 mlog: make stopping logic a little better 2018-10-28 14:31:40 -04:00
Brian Picciano
bc8f323514 mlog: use a waitgroup to flush the Logger on Stop 2018-08-27 15:18:38 -04:00
Brian Picciano
8368d0881b mlog: change how Merge/MergeInto work, so they don't evaluate the KV immediately 2018-07-19 18:43:17 +00:00
Brian Picciano
f0032a19d1 mlog: refactor tests to use massert 2018-07-19 18:19:26 +00:00
Brian Picciano
23d1a8fc91 mdb: implement BigQuery type, needs tests 2018-07-18 23:51:24 +00:00
Brian Picciano
6c17eaa62f mlog: implement KVerFunc and Prefix 2018-07-18 23:01:28 +00:00
Brian Picciano
15efa4ba3a mlog: refactor to handle certain use cases better, and make KV merging more consistent
Logger is now initialized with its WriteCloser (which can never change
after initialization) and then has its properties modified via method
calls. These method calls return new copies of the Logger, all writing
to the same original WriteCloser still. This allows for doing things
like having a Logger within some entity that has its own KV, for
example.

Also I revamped the merging code a bit, and fixed a precedence
inconsitency in ErrWithKV and CtxWithKV.
2018-05-28 07:53:39 +00:00
Brian Picciano
93cfa66c4b rename some mlog files, change KVer interface slightly 2018-02-15 21:23:04 +00:00
Brian Picciano
0b9c02c62a implement mlog logging system, which also implements functionality for embedding KV logging data in contexts and errors 2018-02-04 17:01:21 +00:00