<p>I am trying to troubleshoot my service by looking at the istio-proxy access log (it logs every access). However, I can't find any documentation that explains the meaning of each entry in the log.</p>

<p>For example</p>

<blockquote>
  <p>[2018-12-20T11:09:42.302Z] "GET / HTTP/1.1" 200 - 0 614 0 0 "10.32.96.32" "curl/7.54.0" "17b8f245-af00-4379-9f8f-a4dcd2f38c01" "foo.com" "127.0.0.1:8080"</p>
</blockquote>

<p>What does log above mean?</p>

<h1>Updated</h1>

<p>I've tried <a href="https://stackoverflow.com/a/53869876/476917">Vadim's answer</a>, but I couldn't find the log format data. Here's the <a href="https://gist.github.com/bangau1/4644de67daf8b03570ed0db477903001" rel="nofollow noreferrer">output json file</a>. Is there anything that I miss? 
I am using istio-1.0.0</p>

<p>Istio proxy access log's configuration is defined as part of <code>envoy.http_connection_manager</code> or <code>envoy.tcp_proxy</code> filters. To see it's configuration, run:</p>

<pre><code>istioctl proxy-config listeners &lt;your pod&gt; -n &lt;your namespace&gt; -o json
</code></pre>

<p>Search for <code>access_log</code> of <code>envoy.http_connection_manager</code> for HTTP and <code>access_log</code> of <code>envoy.tcp_proxy</code> for TCP.</p>

<p>You will see something like this:</p>

<pre><code> "filters": [
                {
                    "name": "envoy.http_connection_manager",
                    "config": {
                        "access_log": [
                            {
                                "config": {
                                    "format": "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\" %UPSTREAM_CLUSTER% %UPSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_REMOTE_ADDRESS% %REQUESTED_SERVER_NAME%\n",
                                    "path": "/dev/stdout"
</code></pre>

<p>Check the log attributes definitions <a href="https://www.envoyproxy.io/docs/envoy/latest/configuration/access_log#command-operators" rel="nofollow noreferrer">here</a> </p>

<p>If <code>access_log</code>'s format is not specified in the output above, <a href="https://www.envoyproxy.io/docs/envoy/latest/configuration/access_log#default-format-string" rel="nofollow noreferrer">the default format</a> is used.</p>
