Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

access_log: add ability to generate JSON access logs preserving data types #9043

Merged
merged 10 commits into from Dec 5, 2019

Conversation

@zuercher
Copy link
Member

zuercher commented Nov 15, 2019

Using the new typed JSON format mode, numeric values (e.g. request duration,
response codes, bytes sent, etc) are emitted as json numbers instead of as
json strings. In addition, dynamic metadata and filter state are emitted
as nested structs and lists where appropriate.

Risk Level: medium for users of json logs
Testing: unit tests
Doc Changes: included
Release Notes: included
Fixes: #8374

Signed-off-by: Stephan Zuercher zuercher@gmail.com

@repokitteh repokitteh bot added the api label Nov 15, 2019
@repokitteh

This comment has been minimized.

Copy link

repokitteh bot commented Nov 15, 2019

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to api/.

🐱

Caused by: #9043 was opened by zuercher.

see: more, trace.

@htuch htuch requested a review from dio Nov 15, 2019
…types

Using the new typed JSON format mode, numeric values (e.g. request duration,
response codes, bytes sent, etc) are emitted as json numbers instead of as
json strings. In addition, dynamic metadata and filter state are emitted
as nested structs and lists where appropriate.

Risk Level: medium for users of json logs
Testing: unit tests
Doc Changes: included
Release Notes: included
Fixes: 8374

Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
@zuercher zuercher force-pushed the zuercher:zuercher_typed_json_logs branch from 7a51767 to 9f90221 Nov 15, 2019
@dio

This comment has been minimized.

Copy link
Member

dio commented Nov 15, 2019

Nice. I also have a similar effort for zipkin related to this "render all to string" thing.

zuercher added 2 commits Nov 19, 2019
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
@zuercher zuercher marked this pull request as ready for review Nov 19, 2019
spelling
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
@zuercher

This comment has been minimized.

Copy link
Member Author

zuercher commented Nov 19, 2019

I think this is ready to go now.

Copy link
Member

dio left a comment

LGTM. Very nice!

Are we missing an entry in docs/root/intro/version_history.rst?

@dio

This comment has been minimized.

Copy link
Member

dio commented Nov 25, 2019

/review @htuch

@repokitteh repokitteh bot requested a review from htuch Nov 25, 2019
zuercher added 3 commits Nov 25, 2019
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
@repokitteh

This comment has been minimized.

Copy link

repokitteh bot commented Nov 26, 2019

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to api/.

🐱

Caused by: #9043 was synchronize by zuercher.

see: more, trace.

typo
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
zuercher added 2 commits Dec 2, 2019
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
@dio
dio approved these changes Dec 3, 2019
Copy link
Member

dio left a comment

Thanks, @zuercher!

@@ -140,20 +157,27 @@ The following command operators are supported:

%START_TIME(%s.%9f)%

In typed JSON logs, START_TIME is always rendered as a string.

This comment has been minimized.

Copy link
@dio

dio Dec 3, 2019

Member

👍

@zuercher

This comment has been minimized.

Copy link
Member Author

zuercher commented Dec 4, 2019

friendly ping @lizan

@lizan
lizan approved these changes Dec 5, 2019
@repokitteh repokitteh bot removed the api label Dec 5, 2019
@lizan lizan merged commit c7affbc into envoyproxy:master Dec 5, 2019
19 checks passed
19 checks passed
DCO DCO
Details
ci/circleci: api Your tests passed on CircleCI!
Details
ci/circleci: coverage Your tests passed on CircleCI!
Details
ci/circleci: coverage_publish Your tests passed on CircleCI!
Details
ci/circleci: docs Your tests passed on CircleCI!
Details
ci/circleci: filter_example_mirror Your tests passed on CircleCI!
Details
ci/circleci: go_control_plane_mirror Your tests passed on CircleCI!
Details
envoy-linux #20191202.16 succeeded
Details
envoy-linux (bazel asan) bazel asan succeeded
Details
envoy-linux (bazel clang_tidy) bazel clang_tidy succeeded
Details
envoy-linux (bazel compile_time_options) bazel compile_time_options succeeded
Details
envoy-linux (bazel fuzzit) bazel fuzzit succeeded
Details
envoy-linux (bazel gcc) bazel gcc succeeded
Details
envoy-linux (bazel release) bazel release succeeded
Details
envoy-linux (bazel tsan) bazel tsan succeeded
Details
envoy-linux (format) format succeeded
Details
envoy-macos #20191202.17 succeeded
Details
envoy-windows #20191202.17 succeeded
Details
envoyproxy/api-shepherds must approve changes to api/
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.