.. Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. .. include:: ../../common.defs .. _admin-monitoring-errors: Error Messages ************** The following table lists messages that can appear in system log files. This list is not exhaustive; it simply describes common warning messages that can occur and which might require your attention. Fatal Process Messages ====================== ``Accept port is not between 1 and 65535. Please check configuration`` The port specified in :file:`records.yaml` that accepts incoming HTTP requests is not valid. ``Self loop is detected in parent proxy configuration`` The name and port of the parent proxy match that of Traffic Server. This creates a loop when Traffic Server attempts to send the request to the parent proxy. Process Warnings ================ `` error: error_number`` Generic logging error. ``Connect by disallowed client , closing`` The specified client is not allowed to connect to Traffic Server; the client IP address is not listed in the ``ip_allow.yaml`` file. ``Could not rename log to `` System error when renaming log file during roll. ``Log format symbol not found`` Custom log format references a field symbol that does not exist. Refer to :ref:`admin-logging-formats`. ``Missing field for field marker`` Error reading a log buffer. ``Unable to open log file , errno=`` Cannot open the log file. ``Error accessing disk `` Traffic Server might have a cache read problem. You might need to replace the disk. ``Too many errors accessing disk : declaring disk bad`` Traffic Server is not using the cache disk because it encountered too many errors. The disk might be corrupt and might have to be replaced. ``No cache disks specified in storage.config file: cache disabled`` The Traffic Server :file:`storage.config` file does not list any cache disks; Traffic Server is running in proxy-only mode. You must add the disks you want to use for the cache to :file:`storage.config`. .. _body-factory: HTML Messages Sent to Clients ============================= Traffic Server returns detailed error messages to client browsers when there are problems with the HTTP transactions requested by the browser. These Traffic Server response messages correspond to standard HTTP response codes, but provide more information. A list of the more frequently encountered HTTP response codes is provided in :ref:`appendix-http-status-codes`. The error messages can be customized. The actual response is generated from a template. These templates are stored in files which means the errors responses can be customized by modifying these files. The default directory for the template files is ``PREFIX/body_factory/default`` but this can be changed by the configuration variable :ts:cv:`proxy.config.body_factory.template_sets_dir`. All files in this directory are added to a lookup table which is consulted when the error message is generated. The name used for lookup is by default that listed in the :ref:`following table `. It can be overridden by :ts:cv:`proxy.config.body_factory.template_base` which, if set, is a string that is prepended to the search name along with an underscore. For example, if the default lookup name is ``cache#read_error`` then by default the response will be generated from the template in the file named ``cache#read_error``. If the template base name were set to ``apache`` then the lookup would look for a file named ``apache_cache#read_error`` in the template table. This can be used to switch out error message sets or, because this variable is overridable, to select an error message set based on data in the transaction. In addition the suffix ``_default`` has a special meaning. If there is a file with the base name and that suffix it is used as the default error page for the base set, instead of falling back to the global (built in) default page in the case where there is not a file that matches the specific error. In the example case, if the file ``apache_default`` exists it would be used instead of ``cache#read_error`` if there is no ``apache_cache#read_error``. The text for an error message is processed as if it were a :ref:`admin-logging-fields` which enables customization by values present in the transaction for which the error occurred. The following table lists the hard-coded Traffic Server HTTP messages, with corresponding HTTP response codes and customizable files. .. _body-factory-error-table: ``Access Denied`` ``403`` You are not allowed to access the document at location ``URL``. ``access#denied`` ``Cache Read Error`` ``500`` Error reading from cache; please retry request. ``cache#read_error`` ``Connection Timed Out`` ``504`` Too much time has elapsed since the server has sent data. ``timeout#inactivity`` ``Content Length Required`` ``411`` Could not process this request because ``Content-Length`` was not specified. ``request#no_content_length`` ``Cycle Detected`` ``400`` Your request is prohibited because it would cause an HTTP proxy cycle. ``request#cycle_detected`` ``Forbidden`` ``403`` ```` is not an allowed port for SSL connections (you have made a request for a secure SSL connection to a forbidden port number). ``access#ssl_forbidden`` ``Host Header Required`` ``400`` An attempt was made to transparently proxy your request, but this attempt failed because your browser did not send an HTTP ``Host`` header. Manually configure your browser to use ``http://:`` as the HTTP proxy. Alternatively, end users can upgrade to a browser that supports the HTTP ``Host`` header field. ``interception#no_host`` ``Host Header Required`` ``400`` Because your browser did not send a ``Host`` HTTP header field, the virtual host being requested could not be determined. To access the website correctly, you must upgrade to a browser that supports the HTTP ``Host`` header field. ``request#no_host`` ``HTTP Version Not Supported`` ``505`` The origin server ```` is using an unsupported version of the HTTP protocol. ``response#bad_version`` ``Invalid Content Length`` ``400`` Could not process this request because the specified ``Content-Length`` was invalid (less than 0).. ``request#invalid_content_length`` ``Invalid HTTP Request`` ``400`` Could not process this ```` HTTP method request for ``URL``. ``request#syntax_error`` ``Invalid HTTP Response`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Malformed Server Response`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Malformed Server Response Status`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Maximum Transaction Time exceeded`` ``504`` Too much time has elapsed while transmitting document ``URL``. ``timeout#activity`` ``No Response Header From Server`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Not Cached`` ``504`` This document was not available in the cache, and you (the client) only accept cached copies. ``cache#not_in_cache`` ``Not Found on Accelerator`` ``404`` The request for ``URL`` on host ```` was not found. Check the location and try again. ``urlrouting#no_mapping`` ``NULL`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Proxy Authentication Required`` ``407`` Please log in with username and password. ``access#proxy_auth_required`` ``Server Hangup`` ``502`` The server ```` closed the connection before the transaction was completed. ``connect#hangup`` ``Temporarily Moved`` ``302`` The document you requested, ``URL``, has moved to a new location. The new location is ````. ``redirect#moved_temporarily`` ``Transcoding Not Available`` ``406`` Unable to provide the document ``URL`` in the format requested by your browser. ``transcoding#unsupported`` ``Tunnel Connection Failed`` ``502`` Could not connect to the server ````. ``connect#failed_connect`` ``Unknown Error`` ``502`` The host ```` did not return the document ``URL`` correctly. ``response#bad_response`` ``Unknown Host`` ``500`` Unable to locate the server named ````; the server does not have a DNS entry. Perhaps there is a misspelling in the server name or the server no longer exists; double-check the name and try again. ``connect#dns_failed`` ``Unsupported URL Scheme`` ``400`` Cannot perform your request for the document ``URL`` because the protocol scheme is unknown. ``request#scheme_unsupported`` ``URI Too Long`` ``414`` Could not process this request because the request uri was too long .. ``request#uri_len_too_long``