payload: {"action":"created","issue":{"url":"https://api.github.com/repos/bigbangcore/BigBang/issues/1","repository_url":"https://api.github.com/repos/bigbangcore/BigBang","labels_url":"https://api.github.com/repos/bigbangcore/BigBang/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/bigbangcore/BigBang/issues/1/comments","events_url":"https://api.github.com/repos/bigbangcore/BigBang/issues/1/events","html_url":"https://github.com/bigbangcore/BigBang/issues/1","id":480572128,"node_id":"MDU6SXNzdWU0ODA1NzIxMjg=","number":1,"title":"高性能日志模块","user":{"login":"sunhantao","id":11407783,"node_id":"MDQ6VXNlcjExNDA3Nzgz","avatar_url":"https://avatars3.githubusercontent.com/u/11407783?v=4","gravatar_id":"","url":"https://api.github.com/users/sunhantao","html_url":"https://github.com/sunhantao","followers_url":"https://api.github.com/users/sunhantao/followers","following_url":"https://api.github.com/users/sunhantao/following{/other_user}","gists_url":"https://api.github.com/users/sunhantao/gists{/gist_id}","starred_url":"https://api.github.com/users/sunhantao/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sunhantao/subscriptions","organizations_url":"https://api.github.com/users/sunhantao/orgs","repos_url":"https://api.github.com/users/sunhantao/repos","events_url":"https://api.github.com/users/sunhantao/events{/privacy}","received_events_url":"https://api.github.com/users/sunhantao/received_events","type":"User","site_admin":false},"labels":[{"id":1488145373,"node_id":"MDU6TGFiZWwxNDg4MTQ1Mzcz","url":"https://api.github.com/repos/bigbangcore/BigBang/labels/enhancement","name":"enhancement","color":"a2eeef","default":true}],"state":"open","locked":false,"assignee":{"login":"shangqd","id":5558874,"node_id":"MDQ6VXNlcjU1NTg4NzQ=","avatar_url":"https://avatars0.githubusercontent.com/u/5558874?v=4","gravatar_id":"","url":"https://api.github.com/users/shangqd","html_url":"https://github.com/shangqd","followers_url":"https://api.github.com/users/shangqd/followers","following_url":"https://api.github.com/users/shangqd/following{/other_user}","gists_url":"https://api.github.com/users/shangqd/gists{/gist_id}","starred_url":"https://api.github.com/users/shangqd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shangqd/subscriptions","organizations_url":"https://api.github.com/users/shangqd/orgs","repos_url":"https://api.github.com/users/shangqd/repos","events_url":"https://api.github.com/users/shangqd/events{/privacy}","received_events_url":"https://api.github.com/users/shangqd/received_events","type":"User","site_admin":false},"assignees":[{"login":"shangqd","id":5558874,"node_id":"MDQ6VXNlcjU1NTg4NzQ=","avatar_url":"https://avatars0.githubusercontent.com/u/5558874?v=4","gravatar_id":"","url":"https://api.github.com/users/shangqd","html_url":"https://github.com/shangqd","followers_url":"https://api.github.com/users/shangqd/followers","following_url":"https://api.github.com/users/shangqd/following{/other_user}","gists_url":"https://api.github.com/users/shangqd/gists{/gist_id}","starred_url":"https://api.github.com/users/shangqd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shangqd/subscriptions","organizations_url":"https://api.github.com/users/shangqd/orgs","repos_url":"https://api.github.com/users/shangqd/repos","events_url":"https://api.github.com/users/shangqd/events{/privacy}","received_events_url":"https://api.github.com/users/shangqd/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/bigbangcore/BigBang/milestones/1","html_url":"https://github.com/bigbangcore/BigBang/milestone/1","labels_url":"https://api.github.com/repos/bigbangcore/BigBang/milestones/1/labels","id":4612111,"node_id":"MDk6TWlsZXN0b25lNDYxMjExMQ==","number":1,"title":"v1.0.0","description":"Improve to 95% of Stability Reliability and Correctness","creator":{"login":"sunhantao","id":11407783,"node_id":"MDQ6VXNlcjExNDA3Nzgz","avatar_url":"https://avatars3.githubusercontent.com/u/11407783?v=4","gravatar_id":"","url":"https://api.github.com/users/sunhantao","html_url":"https://github.com/sunhantao","followers_url":"https://api.github.com/users/sunhantao/followers","following_url":"https://api.github.com/users/sunhantao/following{/other_user}","gists_url":"https://api.github.com/users/sunhantao/gists{/gist_id}","starred_url":"https://api.github.com/users/sunhantao/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sunhantao/subscriptions","organizations_url":"https://api.github.com/users/sunhantao/orgs","repos_url":"https://api.github.com/users/sunhantao/repos","events_url":"https://api.github.com/users/sunhantao/events{/privacy}","received_events_url":"https://api.github.com/users/sunhantao/received_events","type":"User","site_admin":false},"open_issues":5,"closed_issues":0,"state":"open","created_at":"2019-08-29T02:30:59Z","updated_at":"2019-08-29T02:48:29Z","due_on":"2019-09-30T07:00:00Z","closed_at":null},"comments":0,"created_at":"2019-08-14T09:21:44Z","updated_at":"2019-08-29T03:32:23Z","closed_at":null,"author_association":"COLLABORATOR","body":"现在日志是一把写文件大锁加上去的。需要更加细粒度。不然写日志竞争很大。要改成异步后台日志线程写。这个在知名网络开源库muduo中有实现，可以参考。并且日志支持配置，比如旋转天数等等。\r\n\r\n调查各种各样的C++ Log库 https://stackoverflow.com/questions/439791/what-is-the-most-efficient-thread-safe-c-logger\r\nhttp://www.pantheios.org/performance.html#scenarios\r\n\r\n从资料中得到的结果，虽然是改进日志模块性能，首先，就单独对比性能来说，虽然boost对比其他第三方库没有压倒性的优势，但也没有劣势，而且从功能和性能的权衡角度看，boost也是绝对满足项目本身的要求的。\r\n\r\n采用boost log的优缺点： \r\n- 缺点：boost 接口不友好，复杂。\r\n- 优点：功能强大（包括可以日志输出可以重定向到远端节点，考虑以后日志汇总监控，会方便），而且项目本身依赖boost，可以直接引用。不用引入冗余的第三方日志库\r\n\r\n采用第三方日志库的优缺点：\r\n- 缺点： 功能冗余引入。\r\n- 优点： 接口友好，功能简单，够用。"},"comment":{"url":"https://api.github.com/repos/bigbangcore/BigBang/issues/comments/526006521","html_url":"https://github.com/bigbangcore/BigBang/issues/1#issuecomment-526006521","issue_url":"https://api.github.com/repos/bigbangcore/BigBang/issues/1","id":526006521,"node_id":"MDEyOklzc3VlQ29tbWVudDUyNjAwNjUyMQ==","user":{"login":"AlexiaChen","id":8574915,"node_id":"MDQ6VXNlcjg1NzQ5MTU=","avatar_url":"https://avatars3.githubusercontent.com/u/8574915?v=4","gravatar_id":"","url":"https://api.github.com/users/AlexiaChen","html_url":"https://github.com/AlexiaChen","followers_url":"https://api.github.com/users/AlexiaChen/followers","following_url":"https://api.github.com/users/AlexiaChen/following{/other_user}","gists_url":"https://api.github.com/users/AlexiaChen/gists{/gist_id}","starred_url":"https://api.github.com/users/AlexiaChen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AlexiaChen/subscriptions","organizations_url":"https://api.github.com/users/AlexiaChen/orgs","repos_url":"https://api.github.com/users/AlexiaChen/repos","events_url":"https://api.github.com/users/AlexiaChen/events{/privacy}","received_events_url":"https://api.github.com/users/AlexiaChen/received_events","type":"User","site_admin":false},"created_at":"2019-08-29T03:32:23Z","updated_at":"2019-08-29T03:32:23Z","author_association":"CONTRIBUTOR","body":"Solved #28 "}}
other: {"actor":{"display_login":"AlexiaChen"}}