.. _envoy_v3_api_file_envoy/extensions/access_loggers/file/v3/file.proto:

File access log
===============

.. _extension_envoy.access_loggers.file:


This extension may be referenced by the qualified name *envoy.access_loggers.file*

.. note::
  

  This extension is intended to be robust against untrusted downstream traffic. It assumes that the upstream is trusted.


.. _envoy_v3_api_msg_extensions.access_loggers.file.v3.FileAccessLog:

extensions.access_loggers.file.v3.FileAccessLog
-----------------------------------------------

`[extensions.access_loggers.file.v3.FileAccessLog proto] <https://github.com/envoyproxy/envoy/blob/cffb095d59d7935abda12b9509bcd136808367bb/api/envoy/extensions/access_loggers/file/v3/file.proto#L24>`_

Custom configuration for an :ref:`AccessLog <envoy_v3_api_msg_config.accesslog.v3.AccessLog>`
that writes log entries directly to a file. Configures the built-in *envoy.access_loggers.file*
AccessLog.

.. code-block:: json

  {
    "path": "...",
    "format": "...",
    "json_format": "{...}",
    "typed_json_format": "{...}",
    "log_format": "{...}"
  }

.. _envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.path:

path
  (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_, *REQUIRED*) A path to a local file to which to write the access log entries.
  
  
.. _envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.format:

format
  (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Access log :ref:`format string<config_access_log_format_strings>`.
  Envoy supports :ref:`custom access log formats <config_access_log_format>` as well as a
  :ref:`default format <config_access_log_default_format>`.
  This field is deprecated.
  Please use :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>`.
  
  
  
  Only one of :ref:`format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.format>`, :ref:`json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.json_format>`, :ref:`typed_json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.typed_json_format>`, :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>` may be set.
  
.. _envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.json_format:

json_format
  (`Struct <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct>`_) Access log :ref:`format dictionary<config_access_log_format_dictionaries>`. All values
  are rendered as strings.
  This field is deprecated.
  Please use :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>`.
  
  
  
  Only one of :ref:`format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.format>`, :ref:`json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.json_format>`, :ref:`typed_json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.typed_json_format>`, :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>` may be set.
  
.. _envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.typed_json_format:

typed_json_format
  (`Struct <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct>`_) Access log :ref:`format dictionary<config_access_log_format_dictionaries>`. Values are
  rendered as strings, numbers, or boolean values as appropriate. Nested JSON objects may
  be produced by some command operators (e.g.FILTER_STATE or DYNAMIC_METADATA). See the
  documentation for a specific command operator for details.
  This field is deprecated.
  Please use :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>`.
  
  
  
  Only one of :ref:`format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.format>`, :ref:`json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.json_format>`, :ref:`typed_json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.typed_json_format>`, :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>` may be set.
  
.. _envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format:

log_format
  (:ref:`config.core.v3.SubstitutionFormatString <envoy_v3_api_msg_config.core.v3.SubstitutionFormatString>`) Configuration to form access log data and format.
  If not specified, use :ref:`default format <config_access_log_default_format>`.
  
  
  
  Only one of :ref:`format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.format>`, :ref:`json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.json_format>`, :ref:`typed_json_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.typed_json_format>`, :ref:`log_format <envoy_v3_api_field_extensions.access_loggers.file.v3.FileAccessLog.log_format>` may be set.