• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

HttpDebugNames.cc

Go to the documentation of this file.
00001 /** @file
00002 
00003   A brief file description
00004 
00005   @section license License
00006 
00007   Licensed to the Apache Software Foundation (ASF) under one
00008   or more contributor license agreements.  See the NOTICE file
00009   distributed with this work for additional information
00010   regarding copyright ownership.  The ASF licenses this file
00011   to you under the Apache License, Version 2.0 (the
00012   "License"); you may not use this file except in compliance
00013   with the License.  You may obtain a copy of the License at
00014 
00015       http://www.apache.org/licenses/LICENSE-2.0
00016 
00017   Unless required by applicable law or agreed to in writing, software
00018   distributed under the License is distributed on an "AS IS" BASIS,
00019   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00020   See the License for the specific language governing permissions and
00021   limitations under the License.
00022  */
00023 
00024 #include "HttpDebugNames.h"
00025 #include "P_EventSystem.h"
00026 #include "StatPages.h"
00027 #include "HttpTunnel.h"
00028 #include "Transform.h"
00029 #include "ICPevents.h"
00030 #include "HttpSM.h"
00031 #include "HttpUpdateSM.h"
00032 
00033 //----------------------------------------------------------------------------
00034 const char *
00035 HttpDebugNames::get_server_state_name(HttpTransact::ServerState_t state)
00036 {
00037   switch (state) {
00038   case HttpTransact::STATE_UNDEFINED:
00039     return "STATE_UNDEFINED";
00040   case HttpTransact::ACTIVE_TIMEOUT:
00041     return "ACTIVE_TIMEOUT";
00042   case HttpTransact::BAD_INCOMING_RESPONSE:
00043     return "BAD_INCOMING_RESPONSE";
00044   case HttpTransact::CONNECTION_ALIVE:
00045     return "CONNECTION_ALIVE";
00046   case HttpTransact::CONNECTION_CLOSED:
00047     return "CONNECTION_CLOSED";
00048   case HttpTransact::CONNECTION_ERROR:
00049     return "CONNECTION_ERROR";
00050   case HttpTransact::INACTIVE_TIMEOUT:
00051     return "INACTIVE_TIMEOUT";
00052   case HttpTransact::OPEN_RAW_ERROR:
00053     return "OPEN_RAW_ERROR";
00054   case HttpTransact::PARSE_ERROR:
00055     return "PARSE_ERROR";
00056   case HttpTransact::TRANSACTION_COMPLETE:
00057     return "TRANSACTION_COMPLETE";
00058   case HttpTransact::CONGEST_CONTROL_CONGESTED_ON_F:
00059     return "CONGEST_CONTROL_CONGESTED_ON_F";
00060   case HttpTransact::CONGEST_CONTROL_CONGESTED_ON_M:
00061     return "CONGEST_CONTROL_CONGESTED_ON_M";
00062   }
00063 
00064   return ("unknown state name");
00065 }
00066 
00067 //////////////////////////////////////////////////////////////////
00068 //
00069 //  HttpDebugNames::get_method_name()
00070 //
00071 //////////////////////////////////////////////////////////////////
00072 const char *
00073 HttpDebugNames::get_method_name(const char *method)
00074 {
00075   if (method == HTTP_METHOD_CONNECT) {
00076     return ("HTTP_METHOD_CONNECT");
00077   } else if (method == HTTP_METHOD_DELETE) {
00078     return ("HTTP_METHOD_DELETE");
00079   } else if (method == HTTP_METHOD_GET) {
00080     return ("HTTP_METHOD_GET");
00081   } else if (method == HTTP_METHOD_HEAD) {
00082     return ("HTTP_METHOD_HEAD");
00083   } else if (method == HTTP_METHOD_OPTIONS) {
00084     return ("HTTP_METHOD_OPTIONS");
00085   } else if (method == HTTP_METHOD_POST) {
00086     return ("HTTP_METHOD_POST");
00087   } else if (method == HTTP_METHOD_PURGE) {
00088     return ("HTTP_METHOD_PURGE");
00089   } else if (method == HTTP_METHOD_PUT) {
00090     return ("HTTP_METHOD_PUT");
00091   } else if (method == HTTP_METHOD_TRACE) {
00092     return ("HTTP_METHOD_TRACE");
00093   } else {
00094     return ("HTTP_METHOD_UNKNOWN");
00095   }
00096 }
00097 
00098 //////////////////////////////////////////////////////////////////
00099 //
00100 //  HttpDebugNames::get_event_name()
00101 //
00102 //////////////////////////////////////////////////////////////////
00103 const char *
00104 HttpDebugNames::get_event_name(int event)
00105 {
00106   switch (event) {
00107     /////////////////////////
00108     // VCONNECTION  EVENTS //
00109     /////////////////////////
00110   case VC_EVENT_NONE:
00111     return ("VC_EVENT_NONE");
00112   case VC_EVENT_IMMEDIATE:
00113     return ("VC_EVENT_IMMEDIATE");
00114   case VC_EVENT_READ_READY:
00115     return ("VC_EVENT_READ_READY");
00116   case VC_EVENT_WRITE_READY:
00117     return ("VC_EVENT_WRITE_READY");
00118   case VC_EVENT_READ_COMPLETE:
00119     return ("VC_EVENT_READ_COMPLETE");
00120   case VC_EVENT_WRITE_COMPLETE:
00121     return ("VC_EVENT_WRITE_COMPLETE");
00122   case VC_EVENT_EOS:
00123     return ("VC_EVENT_EOS");
00124   case VC_EVENT_ERROR:
00125     return ("VC_EVENT_ERROR");
00126   case VC_EVENT_INACTIVITY_TIMEOUT:
00127     return ("VC_EVENT_INACTIVITY_TIMEOUT");
00128   case VC_EVENT_ACTIVE_TIMEOUT:
00129     return ("VC_EVENT_ACTIVE_TIMEOUT");
00130   case EVENT_INTERVAL:
00131     return ("VC_EVENT_INTERVAL");
00132 
00133 
00134     /////////////////
00135     // NET  EVENTS //
00136     /////////////////
00137   case NET_EVENT_OPEN:
00138     return ("NET_EVENT_OPEN");
00139   case NET_EVENT_ACCEPT:
00140     return ("NET_EVENT_ACCEPT");
00141   case NET_EVENT_OPEN_FAILED:
00142     return ("NET_EVENT_OPEN_FAILED");
00143 
00144     ////////////////////
00145     // HOSTDB  EVENTS //
00146     ////////////////////
00147   case EVENT_HOST_DB_LOOKUP:
00148     return ("EVENT_HOST_DB_LOOKUP");
00149 
00150   case EVENT_HOST_DB_GET_RESPONSE:
00151     return ("EVENT_HOST_DB_GET_RESPONSE");
00152 
00153     ////////////////////
00154     // HOSTDB  EVENTS //
00155     ////////////////////
00156   case EVENT_SRV_LOOKUP:
00157     return ("EVENT_SRV_LOOKUP");
00158 
00159   case EVENT_SRV_IP_REMOVED:
00160     return ("EVENT_SRV_IP_REMOVED");
00161 
00162   case EVENT_SRV_GET_RESPONSE:
00163     return ("EVENT_SRV_GET_RESPONSE");
00164 
00165 
00166     ////////////////////
00167     // DNS     EVENTS //
00168     ////////////////////
00169   case DNS_EVENT_LOOKUP:
00170     return ("DNS_EVENT_LOOKUP");
00171 
00172     ////////////////////
00173     // CACHE   EVENTS //
00174     ////////////////////
00175 
00176   case CACHE_EVENT_LOOKUP:
00177     return ("CACHE_EVENT_LOOKUP");
00178   case CACHE_EVENT_LOOKUP_FAILED:
00179     return ("CACHE_EVENT_LOOKUP_FAILED");
00180   case CACHE_EVENT_OPEN_READ:
00181     return ("CACHE_EVENT_OPEN_READ");
00182   case CACHE_EVENT_OPEN_READ_FAILED:
00183     return ("CACHE_EVENT_OPEN_READ_FAILED");
00184   case CACHE_EVENT_OPEN_WRITE:
00185     return ("CACHE_EVENT_OPEN_WRITE");
00186   case CACHE_EVENT_OPEN_WRITE_FAILED:
00187     return ("CACHE_EVENT_OPEN_WRITE_FAILED");
00188   case CACHE_EVENT_REMOVE:
00189     return ("CACHE_EVENT_REMOVE");
00190   case CACHE_EVENT_REMOVE_FAILED:
00191     return ("CACHE_EVENT_REMOVE_FAILED");
00192   case CACHE_EVENT_UPDATE:
00193     return ("CACHE_EVENT_UPDATE");
00194   case CACHE_EVENT_UPDATE_FAILED:
00195     return ("CACHE_EVENT_UPDATE_FAILED");
00196 
00197   case STAT_PAGE_SUCCESS:
00198     return ("STAT_PAGE_SUCCESS");
00199   case STAT_PAGE_FAILURE:
00200     return ("STAT_PAGE_FAILURE");
00201 
00202   case TRANSFORM_READ_READY:
00203     return ("TRANSFORM_READ_READY");
00204 
00205     /////////////////////////
00206     //  HttpTunnel Events //
00207     /////////////////////////
00208   case HTTP_TUNNEL_EVENT_DONE:
00209     return ("HTTP_TUNNEL_EVENT_DONE");
00210   case HTTP_TUNNEL_EVENT_PRECOMPLETE:
00211     return ("HTTP_TUNNEL_EVENT_PRECOMPLETE");
00212   case HTTP_TUNNEL_EVENT_CONSUMER_DETACH:
00213     return ("HTTP_TUNNEL_EVENT_CONSUMER_DETACH");
00214 
00215     //////////////////////////
00216     //  ICP Events
00217     //////////////////////////
00218   case ICP_LOOKUP_FOUND:
00219     return ("ICP_LOOKUP_FOUND");
00220   case ICP_LOOKUP_FAILED:
00221     return ("ICP_LOOKUP_FAILED");
00222 
00223     //////////////////////////////
00224     //  CongestionControl Events
00225     //////////////////////////////
00226   case CONGESTION_EVENT_CONGESTED_ON_F:
00227     return ("CONGESTION_EVENT_CONGESTED_ON_F");
00228   case CONGESTION_EVENT_CONGESTED_ON_M:
00229     return ("CONGESTION_EVENT_CONGESTED_ON_M");
00230 
00231     //////////////////////////////
00232     //  Plugin Events
00233     //////////////////////////////
00234   case HTTP_API_CONTINUE:
00235     return ("HTTP_API_CONTINUE");
00236   case HTTP_API_ERROR:
00237     return ("HTTP_API_ERROR");
00238 
00239     ///////////////////////////////
00240     //  Scheduled Update Events
00241     ///////////////////////////////
00242   case HTTP_SCH_UPDATE_EVENT_WRITTEN:
00243     return "HTTP_SCH_UPDATE_EVENT_WRITTEN";
00244   case HTTP_SCH_UPDATE_EVENT_UPDATED:
00245     return "HTTP_SCH_UPDATE_EVENT_UPDATED";
00246   case HTTP_SCH_UPDATE_EVENT_DELETED:
00247     return "HTTP_SCH_UPDATE_EVENT_DELETED";
00248   case HTTP_SCH_UPDATE_EVENT_NOT_CACHED:
00249     return "HTTP_SCH_UPDATE_EVENT_NOT_CACHED";
00250   case HTTP_SCH_UPDATE_EVENT_ERROR:
00251     return "HTTP_SCH_UPDATE_EVENT_ERROR";
00252   case HTTP_SCH_UPDATE_EVENT_NO_ACTION:
00253     return "HTTP_SCH_UPDATE_EVENT_NO_ACTION";
00254 
00255   }
00256 
00257   return ("unknown event");
00258 }
00259 
00260 //////////////////////////////////////////////////////////////////
00261 //
00262 //  HttpDebugNames::get_action_name()
00263 //
00264 //////////////////////////////////////////////////////////////////
00265 const char *
00266 HttpDebugNames::get_action_name(HttpTransact::StateMachineAction_t e)
00267 {
00268   switch (e) {
00269   case HttpTransact::SM_ACTION_UNDEFINED:
00270     return ("SM_ACTION_UNDEFINED");
00271 
00272   case HttpTransact::SM_ACTION_CACHE_ISSUE_WRITE:
00273     return ("SM_ACTION_CACHE_ISSUE_WRITE");
00274 
00275   case HttpTransact::SM_ACTION_CACHE_ISSUE_WRITE_TRANSFORM:
00276     return ("SM_ACTION_CACHE_ISSUE_WRITE_TRANSFORM");
00277 
00278   case HttpTransact::SM_ACTION_CACHE_LOOKUP:
00279     return ("SM_ACTION_CACHE_LOOKUP");
00280 
00281   case HttpTransact::SM_ACTION_DNS_LOOKUP:
00282     return ("SM_ACTION_DNS_LOOKUP");
00283 
00284   case HttpTransact::SM_ACTION_DNS_REVERSE_LOOKUP:
00285     return ("SM_ACTION_DNS_REVERSE_LOOKUP");
00286 
00287   case HttpTransact::SM_ACTION_ICP_QUERY:
00288     return ("SM_ACTION_ICP_QUERY");
00289 
00290   case HttpTransact::SM_ACTION_CACHE_PREPARE_UPDATE:
00291     return ("SM_ACTION_CACHE_PREPARE_UPDATE");
00292 
00293   case HttpTransact::SM_ACTION_CACHE_ISSUE_UPDATE:
00294     return ("SM_ACTION_CACHE_ISSUE_UPDATE");
00295 
00296   case HttpTransact::SM_ACTION_ORIGIN_SERVER_OPEN:
00297     return ("SM_ACTION_ORIGIN_SERVER_OPEN");
00298 
00299   case HttpTransact::SM_ACTION_ORIGIN_SERVER_RAW_OPEN:
00300     return ("SM_ACTION_ORIGIN_SERVER_RAW_OPEN");
00301 
00302   case HttpTransact::SM_ACTION_ORIGIN_SERVER_RR_MARK_DOWN:
00303     return ("SM_ACTION_ORIGIN_SERVER_RR_MARK_DOWN");
00304 
00305   case HttpTransact::SM_ACTION_READ_PUSH_HDR:
00306     return ("SM_ACTION_READ_PUSH_HDR");
00307 
00308   case HttpTransact::SM_ACTION_STORE_PUSH_BODY:
00309     return ("SM_ACTION_STORE_PUSH_BODY");
00310 
00311   case HttpTransact::SM_ACTION_INTERNAL_CACHE_WRITE:
00312     return ("SM_ACTION_INTERNAL_CACHE_WRITE");
00313 
00314   case HttpTransact::SM_ACTION_INTERNAL_CACHE_DELETE:
00315     return ("SM_ACTION_INTERNAL_CACHE_DELETE");
00316 
00317   case HttpTransact::SM_ACTION_INTERNAL_CACHE_NOOP:
00318     return ("SM_ACTION_INTERNAL_CACHE_NOOP");
00319 
00320   case HttpTransact::SM_ACTION_INTERNAL_CACHE_UPDATE_HEADERS:
00321     return ("SM_ACTION_INTERNAL_CACHE_UPDATE_HEADERS");
00322 
00323   case HttpTransact::SM_ACTION_INTERNAL_REQUEST:
00324     return ("SM_ACTION_INTERNAL_REQUEST");
00325 
00326   case HttpTransact::SM_ACTION_SEND_ERROR_CACHE_NOOP:
00327     return ("SM_ACTION_SEND_ERROR_CACHE_NOOP");
00328 
00329   case HttpTransact::SM_ACTION_SERVE_FROM_CACHE:
00330     return ("SM_ACTION_SERVE_FROM_CACHE");
00331 
00332   case HttpTransact::SM_ACTION_SERVER_READ:
00333     return ("SM_ACTION_SERVER_READ");
00334 
00335   case HttpTransact::SM_ACTION_SSL_TUNNEL:
00336     return ("SM_ACTION_SSL_TUNNEL");
00337 
00338   case HttpTransact::SM_ACTION_CONTINUE:
00339     return ("SM_ACTION_CONTINUE");
00340 
00341   case HttpTransact::SM_ACTION_API_READ_REQUEST_HDR:
00342     return ("SM_ACTION_API_READ_REQUEST_HDR");
00343 
00344   case HttpTransact::SM_ACTION_API_OS_DNS:
00345     return ("SM_ACTION_API_OS_DNS");
00346 
00347   case HttpTransact::SM_ACTION_API_SEND_REQUEST_HDR:
00348     return ("SM_ACTION_API_SEND_REQUEST_HDR");
00349 
00350   case HttpTransact::SM_ACTION_API_READ_CACHE_HDR:
00351     return ("SM_ACTION_API_READ_CACHE_HDR");
00352 
00353   case HttpTransact::SM_ACTION_API_CACHE_LOOKUP_COMPLETE:
00354     return ("SM_ACTION_API_CACHE_LOOKUP_COMPLETE");
00355 
00356   case HttpTransact::SM_ACTION_API_READ_RESPONSE_HDR:
00357     return ("SM_ACTION_API_READ_RESPONSE_HDR");
00358 
00359   case HttpTransact::SM_ACTION_API_SEND_RESPONSE_HDR:
00360     return ("SM_ACTION_API_SEND_RESPONSE_HDR");
00361 
00362   case HttpTransact::SM_ACTION_INTERNAL_100_RESPONSE:
00363     return ("SM_ACTION_INTERNAL_100_RESPONSE");
00364 
00365   case HttpTransact::SM_ACTION_SERVER_PARSE_NEXT_HDR:
00366     return ("SM_ACTION_SERVER_PARSE_NEXT_HDR");
00367 
00368   case HttpTransact::SM_ACTION_TRANSFORM_READ:
00369     return ("SM_ACTION_TRANSFORM_READ");
00370 
00371 #ifdef PROXY_DRAIN
00372   case HttpTransact::SM_ACTION_DRAIN_REQUEST_BODY:
00373     return ("SM_ACTION_DRAIN_REQUEST_BODY");
00374 #endif /* PROXY_DRAIN */
00375 
00376   case HttpTransact::SM_ACTION_API_SM_START:
00377     return ("SM_ACTION_API_SM_START");
00378   case HttpTransact::SM_ACTION_REDIRECT_READ:
00379     return ("SM_ACTION_REDIRECT_READ");
00380   case HttpTransact::SM_ACTION_API_SM_SHUTDOWN:
00381     return ("SM_ACTION_API_SM_SHUTDOWN");
00382   case HttpTransact::SM_ACTION_REMAP_REQUEST:
00383     return ("SM_ACTION_REMAP_REQUEST");
00384   case HttpTransact::SM_ACTION_API_PRE_REMAP:
00385     return ("SM_ACTION_API_PRE_REMAP");
00386   case HttpTransact::SM_ACTION_API_POST_REMAP:
00387     return ("SM_ACTION_API_POST_REMAP");
00388   case HttpTransact::SM_ACTION_POST_REMAP_SKIP:
00389     return ("SM_ACTION_POST_REMAP_SKIP");
00390   }
00391 
00392   return ("unknown state name");
00393 }
00394 
00395 //////////////////////////////////////////////////////////////////
00396 //
00397 //  HttpDebugNames::get_cache_action_name()
00398 //
00399 //////////////////////////////////////////////////////////////////
00400 const char *
00401 HttpDebugNames::get_cache_action_name(HttpTransact::CacheAction_t t)
00402 {
00403   switch (t) {
00404   case HttpTransact::CACHE_DO_UNDEFINED:
00405     return ("CACHE_DO_UNDEFINED");
00406   case HttpTransact::CACHE_DO_NO_ACTION:
00407     return ("CACHE_DO_NO_ACTION");
00408   case HttpTransact::CACHE_DO_DELETE:
00409     return ("CACHE_DO_DELETE");
00410   case HttpTransact::CACHE_DO_LOOKUP:
00411     return ("CACHE_DO_LOOKUP");
00412   case HttpTransact::CACHE_DO_REPLACE:
00413     return ("CACHE_DO_REPLACE");
00414   case HttpTransact::CACHE_DO_SERVE:
00415     return ("CACHE_DO_SERVE");
00416   case HttpTransact::CACHE_DO_SERVE_AND_DELETE:
00417     return ("CACHE_DO_SERVE_AND_DELETE");
00418   case HttpTransact::CACHE_DO_SERVE_AND_UPDATE:
00419     return ("CACHE_DO_SERVE_AND_UPDATE");
00420   case HttpTransact::CACHE_DO_UPDATE:
00421     return ("CACHE_DO_UPDATE");
00422   case HttpTransact::CACHE_DO_WRITE:
00423     return ("CACHE_DO_WRITE");
00424   case HttpTransact::CACHE_PREPARE_TO_DELETE:
00425     return ("CACHE_PREPARE_TO_DELETE");
00426   case HttpTransact::CACHE_PREPARE_TO_UPDATE:
00427     return ("CACHE_PREPARE_TO_UPDATE");
00428   case HttpTransact::CACHE_PREPARE_TO_WRITE:
00429     return ("CACHE_PREPARE_TO_WRITE");
00430   case HttpTransact::TOTAL_CACHE_ACTION_TYPES:
00431     return ("TOTAL_CACHE_ACTION_TYPES");
00432   }
00433 
00434   return ("unknown cache action");
00435 }
00436 
00437 
00438 //////////////////////////////////////////////////////////////////
00439 //
00440 //  HttpDebugNames::get_api_hook_name()
00441 //
00442 //////////////////////////////////////////////////////////////////
00443 const char *
00444 HttpDebugNames::get_api_hook_name(TSHttpHookID t)
00445 {
00446   switch (t) {
00447   case TS_HTTP_READ_REQUEST_HDR_HOOK:
00448     return "TS_HTTP_READ_REQUEST_HDR_HOOK";
00449   case TS_HTTP_OS_DNS_HOOK:
00450     return "TS_HTTP_OS_DNS_HOOK";
00451   case TS_HTTP_SEND_REQUEST_HDR_HOOK:
00452     return "TS_HTTP_SEND_REQUEST_HDR_HOOK";
00453   case TS_HTTP_READ_CACHE_HDR_HOOK:
00454     return "TS_HTTP_READ_CACHE_HDR_HOOK";
00455   case TS_HTTP_CACHE_LOOKUP_COMPLETE_HOOK:
00456     return "TS_HTTP_CACHE_LOOKUP_COMPLETE_HOOK";
00457   case TS_HTTP_READ_RESPONSE_HDR_HOOK:
00458     return "TS_HTTP_READ_RESPONSE_HDR_HOOK";
00459   case TS_HTTP_SEND_RESPONSE_HDR_HOOK:
00460     return "TS_HTTP_SEND_RESPONSE_HDR_HOOK";
00461   case TS_HTTP_REQUEST_TRANSFORM_HOOK:
00462     return "TS_HTTP_REQUEST_TRANSFORM_HOOK";
00463   case TS_HTTP_RESPONSE_TRANSFORM_HOOK:
00464     return "TS_HTTP_RESPONSE_TRANSFORM_HOOK";
00465   case TS_HTTP_SELECT_ALT_HOOK:
00466     return "TS_HTTP_SELECT_ALT_HOOK";
00467   case TS_HTTP_TXN_START_HOOK:
00468     return "TS_HTTP_TXN_START_HOOK";
00469   case TS_HTTP_TXN_CLOSE_HOOK:
00470     return "TS_HTTP_TXN_CLOSE_HOOK";
00471   case TS_HTTP_SSN_START_HOOK:
00472     return "TS_HTTP_SSN_START_HOOK";
00473   case TS_HTTP_SSN_CLOSE_HOOK:
00474     return "TS_HTTP_SSN_CLOSE_HOOK";
00475   case TS_HTTP_PRE_REMAP_HOOK:
00476     return "TS_HTTP_PRE_REMAP_HOOK";
00477   case TS_HTTP_POST_REMAP_HOOK:
00478     return "TS_HTTP_POST_REMAP_HOOK";
00479   case TS_HTTP_RESPONSE_CLIENT_HOOK:
00480     return "TS_HTTP_RESPONSE_CLIENT_HOOK";
00481   case TS_HTTP_LAST_HOOK:
00482     return "TS_HTTP_LAST_HOOK";
00483   }
00484 
00485   return "unknown hook";
00486 }

Generated by  doxygen 1.7.1