From 746207f07f2dfe15cac1d900319f4af37ca903c0 Mon Sep 17 00:00:00 2001 From: Mikhail Avramenko Date: Wed, 13 Oct 2021 11:44:34 +0700 Subject: [PATCH] review fixes Signed-off-by: Mikhail Avramenko --- pkg/tools/log/Readme.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkg/tools/log/Readme.md b/pkg/tools/log/Readme.md index 1736e2b33..9173bf5f3 100644 --- a/pkg/tools/log/Readme.md +++ b/pkg/tools/log/Readme.md @@ -2,16 +2,16 @@ ### How to understand logs -1. Every log line starts with timestamp, which is useful when you trying to trace the request in the application chain +1. Every log line starts with timestamp, which is helpful when tracing request in the application chain 2. Most of the log lines contains `[type:NetworkService]` or `[type:NetworkServiceRegistry]` which helps to separate `request` logic from `registration` logic 3. Most of the log lines contains `[id:'some value']` which is helpful when tracing request in application chain 4. It is useful to transform logs using `grep` utility to discard 'noise' logs that is not needed for analyzing(examples will be in section `Useful scripts`) -5. It is helpful to install plugin to IDE which is colorizing logs. (for example ANSI highlighter for Goland) -6. Message `an error during getting metadata from context: metadata is missed in ctx` - id a good criteria for separating ordinary request from refresh request(refresh do not have metadata) +5. It is helpful to install plugin on IDE which is colorizing logs. (for example, ANSI highlighter for Goland) +6. Message `an error during getting metadata from context: metadata is missed in ctx` is a good criteria for separating ordinary request from refresh request(refresh doesn't have metadata) ### Useful scripts -1. Applied to folder containing resulting logs. It removes lines related to Jaeger and remove lines with just spans. Also it changes file extension to be suitable for highlighters +1. Applied to folder containing resulting logs. It removes lines related to Jaeger and remove lines with just spans. Also, it changes file extension to one suitable for highlighters ```bash for filename in *.logs; do cat "${filename}" | grep -v "Reporting span" | grep -v "Jaeger" > "$(echo "${filename}" | sed "s/\.logs/\.log/g")" @@ -19,16 +19,16 @@ for filename in *.logs; do done ``` -2. It is useful to grep logs for specific information you want - id, type, loglevel etc. For example: -- get only networkService type +2. It is useful to grep logs for extracting specific information that you want - by id, type, loglevel etc. For example: +- get only networkService type lines ```bash -grep -w grep -w type:networkService some_log_file.log > another_log_file.log +grep -w type:networkService some_log_file.log > another_log_file.log ``` -- get logs **without** any NetworkServiceEndpointRegistry type +- get logs **without** any NetworkServiceEndpointRegistry type lines ```bash grep -w -v type:NetworkServiceEndpointRegistry some_log_file.log > another_log_file.log ``` -- get only specific request id (random id in example) +- get all lines with specific request id (random id in example) ```bash grep -w id:d7bb2d77-7cd4-44ad-902b-5e392852d93a-final-endpoint some_log_file.log > another_log_file.log ``` \ No newline at end of file