{"action":"created","issue":{"url":"https://api.github.com/repos/line/armeria/issues/1381","repository_url":"https://api.github.com/repos/line/armeria","labels_url":"https://api.github.com/repos/line/armeria/issues/1381/labels{/name}","comments_url":"https://api.github.com/repos/line/armeria/issues/1381/comments","events_url":"https://api.github.com/repos/line/armeria/issues/1381/events","html_url":"https://github.com/line/armeria/pull/1381","id":368512510,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIxNjcyMjMy","number":1381,"title":"Add `AccessLogWriter` and deprecate StructuredLog and its related classes","user":{"login":"trustin","id":173918,"node_id":"MDQ6VXNlcjE3MzkxOA==","avatar_url":"https://avatars0.githubusercontent.com/u/173918?v=4","gravatar_id":"","url":"https://api.github.com/users/trustin","html_url":"https://github.com/trustin","followers_url":"https://api.github.com/users/trustin/followers","following_url":"https://api.github.com/users/trustin/following{/other_user}","gists_url":"https://api.github.com/users/trustin/gists{/gist_id}","starred_url":"https://api.github.com/users/trustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trustin/subscriptions","organizations_url":"https://api.github.com/users/trustin/orgs","repos_url":"https://api.github.com/users/trustin/repos","events_url":"https://api.github.com/users/trustin/events{/privacy}","received_events_url":"https://api.github.com/users/trustin/received_events","type":"User","site_admin":false},"labels":[{"id":632570305,"node_id":"MDU6TGFiZWw2MzI1NzAzMDU=","url":"https://api.github.com/repos/line/armeria/labels/breaking-change","name":"breaking-change","color":"fc2929","default":false},{"id":777414734,"node_id":"MDU6TGFiZWw3Nzc0MTQ3MzQ=","url":"https://api.github.com/repos/line/armeria/labels/deprecation","name":"deprecation","color":"fc2929","default":false},{"id":287373881,"node_id":"MDU6TGFiZWwyODczNzM4ODE=","url":"https://api.github.com/repos/line/armeria/labels/new-feature","name":"new-feature","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/line/armeria/milestones/118","html_url":"https://github.com/line/armeria/milestone/118","labels_url":"https://api.github.com/repos/line/armeria/milestones/118/labels","id":3714233,"node_id":"MDk6TWlsZXN0b25lMzcxNDIzMw==","number":118,"title":"0.72.1","description":null,"creator":{"login":"trustin","id":173918,"node_id":"MDQ6VXNlcjE3MzkxOA==","avatar_url":"https://avatars0.githubusercontent.com/u/173918?v=4","gravatar_id":"","url":"https://api.github.com/users/trustin","html_url":"https://github.com/trustin","followers_url":"https://api.github.com/users/trustin/followers","following_url":"https://api.github.com/users/trustin/following{/other_user}","gists_url":"https://api.github.com/users/trustin/gists{/gist_id}","starred_url":"https://api.github.com/users/trustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trustin/subscriptions","organizations_url":"https://api.github.com/users/trustin/orgs","repos_url":"https://api.github.com/users/trustin/repos","events_url":"https://api.github.com/users/trustin/events{/privacy}","received_events_url":"https://api.github.com/users/trustin/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":6,"state":"open","created_at":"2018-10-05T07:46:11Z","updated_at":"2018-10-10T07:38:46Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2018-10-10T06:31:01Z","updated_at":"2018-10-10T09:27:57Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/line/armeria/pulls/1381","html_url":"https://github.com/line/armeria/pull/1381","diff_url":"https://github.com/line/armeria/pull/1381.diff","patch_url":"https://github.com/line/armeria/pull/1381.patch"},"body":"Motivation:\r\n\r\n- `StructuredLoggingService` is not capable of logging unmapped or broken\r\n  requests.\r\n- `StructuredLog` is of dubious value. Nobody uses it or people can just\r\n  build his/her own.\r\n\r\nModifications:\r\n\r\n- Add `AccessLogWriter` interface\r\n  - Deprecate `AccessLogWriters` and add the same factory methods to\r\n    `AccessLogWriter`\r\n  - Replace the usage of `Consumer<RequestLog>` with `AccessLogWriter`\r\n  - Add `ServerConfig.shutdownAccessLogWriterOnStop`\r\n- Add `KafkaAccessLogWriter`\r\n  - Deprecate `KafkaStructuredLoggingService`\r\n- Deprecate `StructuredLogJsonKafkaSerializer`\r\n  - Use https://github.com/daniel-shuy/kafka-jackson-serializer instead.\r\n- Deprecate all classes under `server.logging.structured`\r\n\r\nResult:\r\n\r\n- Leaner API\r\n- Can send Kafka records for unmapped or broken requests"},"comment":{"url":"https://api.github.com/repos/line/armeria/issues/comments/428503055","html_url":"https://github.com/line/armeria/pull/1381#issuecomment-428503055","issue_url":"https://api.github.com/repos/line/armeria/issues/1381","id":428503055,"node_id":"MDEyOklzc3VlQ29tbWVudDQyODUwMzA1NQ==","user":{"login":"codecov[bot]","id":22429695,"node_id":"MDM6Qm90MjI0Mjk2OTU=","avatar_url":"https://avatars2.githubusercontent.com/in/254?v=4","gravatar_id":"","url":"https://api.github.com/users/codecov%5Bbot%5D","html_url":"https://github.com/apps/codecov","followers_url":"https://api.github.com/users/codecov%5Bbot%5D/followers","following_url":"https://api.github.com/users/codecov%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/codecov%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/codecov%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codecov%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/codecov%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/codecov%5Bbot%5D/repos","events_url":"https://api.github.com/users/codecov%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/codecov%5Bbot%5D/received_events","type":"Bot","site_admin":false},"created_at":"2018-10-10T09:27:57Z","updated_at":"2018-10-10T09:27:57Z","author_association":"NONE","body":"# [Codecov](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=h1) Report\n> Merging [#1381](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=desc) into [master](https://codecov.io/gh/line/armeria/commit/0ad60b78b1909f3da820d4ad90c645d02d56700e?src=pr&el=desc) will **increase** coverage by `0.03%`.\n> The diff coverage is `49.25%`.\n\n[![Impacted file tree graph](https://codecov.io/gh/line/armeria/pull/1381/graphs/tree.svg?width=650&token=3lXj2zLDWu&height=150&src=pr)](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=tree)\n\n```diff\n@@            Coverage Diff            @@\n##           master   #1381      +/-   ##\n=========================================\n+ Coverage   72.76%   72.8%   +0.03%     \n=========================================\n  Files         607     609       +2     \n  Lines       26345   26394      +49     \n  Branches     3191    3193       +2     \n=========================================\n+ Hits        19170   19215      +45     \n- Misses       5511    5513       +2     \n- Partials     1664    1666       +2\n```\n\n\n| [Impacted Files](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=tree) | Coverage Δ | |\n|---|---|---|\n| [...ctured/kafka/StructuredLogJsonKafkaSerializer.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-a2Fma2Evc3JjL21haW4vamF2YS9jb20vbGluZWNvcnAvYXJtZXJpYS9zZXJ2ZXIvbG9nZ2luZy9zdHJ1Y3R1cmVkL2thZmthL1N0cnVjdHVyZWRMb2dKc29uS2Fma2FTZXJpYWxpemVyLmphdmE=) | `0% <ø> (ø)` | :arrow_up: |\n| [...tructured/kafka/KafkaStructuredLoggingService.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-a2Fma2Evc3JjL21haW4vamF2YS9jb20vbGluZWNvcnAvYXJtZXJpYS9zZXJ2ZXIvbG9nZ2luZy9zdHJ1Y3R1cmVkL2thZmthL0thZmthU3RydWN0dXJlZExvZ2dpbmdTZXJ2aWNlLmphdmE=) | `48.27% <ø> (ø)` | :arrow_up: |\n| [...r/logging/structured/StructuredLoggingService.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9sb2dnaW5nL3N0cnVjdHVyZWQvU3RydWN0dXJlZExvZ2dpbmdTZXJ2aWNlLmphdmE=) | `75% <ø> (ø)` | :arrow_up: |\n| [...meria/server/logging/structured/StructuredLog.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9sb2dnaW5nL3N0cnVjdHVyZWQvU3RydWN0dXJlZExvZy5qYXZh) | `72.72% <ø> (ø)` | :arrow_up: |\n| [...ecorp/armeria/server/logging/AccessLogWriters.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9sb2dnaW5nL0FjY2Vzc0xvZ1dyaXRlcnMuamF2YQ==) | `0% <0%> (-16.67%)` | :arrow_down: |\n| [...com/linecorp/armeria/server/HttpServerHandler.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9IdHRwU2VydmVySGFuZGxlci5qYXZh) | `77.1% <100%> (-0.34%)` | :arrow_down: |\n| [...inecorp/armeria/server/HttpResponseSubscriber.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9IdHRwUmVzcG9uc2VTdWJzY3JpYmVyLmphdmE=) | `76.56% <100%> (ø)` | :arrow_up: |\n| [...necorp/armeria/server/logging/AccessLogWriter.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9sb2dnaW5nL0FjY2Vzc0xvZ1dyaXRlci5qYXZh) | `13.33% <13.33%> (ø)` | |\n| [...java/com/linecorp/armeria/server/ServerConfig.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9TZXJ2ZXJDb25maWcuamF2YQ==) | `46.19% <33.33%> (-0.16%)` | :arrow_down: |\n| [...ava/com/linecorp/armeria/server/ServerBuilder.java](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree#diff-Y29yZS9zcmMvbWFpbi9qYXZhL2NvbS9saW5lY29ycC9hcm1lcmlhL3NlcnZlci9TZXJ2ZXJCdWlsZGVyLmphdmE=) | `71.91% <40%> (+0.12%)` | :arrow_up: |\n| ... and [19 more](https://codecov.io/gh/line/armeria/pull/1381/diff?src=pr&el=tree-more) | |\n\n------\n\n[Continue to review full report at Codecov](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=continue).\n> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)\n> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`\n> Powered by [Codecov](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=footer). Last update [0ad60b7...e0576dd](https://codecov.io/gh/line/armeria/pull/1381?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).\n"}}
{"actor":{"display_login":"codecov"}}