You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2016/01/27 00:41:40 UTC
trafficserver git commit: TS-4148 Add a log field for connection
attempts made to origin
Repository: trafficserver
Updated Branches:
refs/heads/master d52dcaddf -> 5ebaf4f8a
TS-4148 Add a log field for connection attempts made to origin
Added a log field `sca` that outputs the number of connection
attempts made to the origin server for the current transaction.
This closes #437
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/5ebaf4f8
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/5ebaf4f8
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/5ebaf4f8
Branch: refs/heads/master
Commit: 5ebaf4f8ace33b55010d578d01ea938843549806
Parents: d52dcad
Author: Daniel Xu <dl...@yahoo.com>
Authored: Mon Jan 25 20:55:12 2016 +0000
Committer: Leif Hedstrom <zw...@apache.org>
Committed: Tue Jan 26 16:31:32 2016 -0700
----------------------------------------------------------------------
doc/admin-guide/monitoring/logging/log-formats.en.rst | 6 ++++++
proxy/logging/Log.cc | 5 +++++
proxy/logging/LogAccess.cc | 8 ++++++++
proxy/logging/LogAccess.h | 1 +
proxy/logging/LogAccessHttp.cc | 13 +++++++++++++
proxy/logging/LogAccessHttp.h | 1 +
6 files changed, 34 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/doc/admin-guide/monitoring/logging/log-formats.en.rst
----------------------------------------------------------------------
diff --git a/doc/admin-guide/monitoring/logging/log-formats.en.rst b/doc/admin-guide/monitoring/logging/log-formats.en.rst
index 3fb8a3f..ce55519 100644
--- a/doc/admin-guide/monitoring/logging/log-formats.en.rst
+++ b/doc/admin-guide/monitoring/logging/log-formats.en.rst
@@ -708,6 +708,12 @@ The following list describes |TS| custom logging fields.
Indicates whether the connection from |TS| to the origin
was over SSL or not.
+.. _sca:
+
+``sca``
+ The number of attempts in the transaction Traffic Server tries to
+ connect to the origin server.
+
.. _shi:
``shi``
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/proxy/logging/Log.cc
----------------------------------------------------------------------
diff --git a/proxy/logging/Log.cc b/proxy/logging/Log.cc
index dfd0bfd..bbad5be 100644
--- a/proxy/logging/Log.cc
+++ b/proxy/logging/Log.cc
@@ -714,6 +714,11 @@ Log::init_fields()
global_field_list.add(field, false);
ink_hash_table_insert(field_symbol_hash, "sstc", field);
+ field = new LogField("server_connect_attempts", "sca", LogField::sINT, &LogAccess::marshal_server_connect_attempts,
+ &LogAccess::unmarshal_int_to_str);
+ global_field_list.add(field, false);
+ ink_hash_table_insert(field_symbol_hash, "sca", field);
+
field = new LogField("cached_resp_status_code", "csssc", LogField::sINT, &LogAccess::marshal_cache_resp_status_code,
&LogAccess::unmarshal_http_status);
global_field_list.add(field, false);
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/proxy/logging/LogAccess.cc
----------------------------------------------------------------------
diff --git a/proxy/logging/LogAccess.cc b/proxy/logging/LogAccess.cc
index 69e454a..e528002 100644
--- a/proxy/logging/LogAccess.cc
+++ b/proxy/logging/LogAccess.cc
@@ -558,6 +558,14 @@ LogAccess::marshal_server_transact_count(char *buf)
}
/*-------------------------------------------------------------------------
+-------------------------------------------------------------------------*/
+int
+LogAccess::marshal_server_connect_attempts(char *buf)
+{
+ DEFAULT_INT_FIELD;
+}
+
+/*-------------------------------------------------------------------------
-------------------------------------------------------------------------*/
int
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/proxy/logging/LogAccess.h
----------------------------------------------------------------------
diff --git a/proxy/logging/LogAccess.h b/proxy/logging/LogAccess.h
index 27442ae..96be7f0 100644
--- a/proxy/logging/LogAccess.h
+++ b/proxy/logging/LogAccess.h
@@ -234,6 +234,7 @@ public:
inkcoreapi virtual int marshal_server_resp_time_ms(char *); // INT
inkcoreapi virtual int marshal_server_resp_time_s(char *); // INT
inkcoreapi virtual int marshal_server_transact_count(char *); // INT
+ inkcoreapi virtual int marshal_server_connect_attempts(char *); // INT
//
// cache -> client fields
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/proxy/logging/LogAccessHttp.cc
----------------------------------------------------------------------
diff --git a/proxy/logging/LogAccessHttp.cc b/proxy/logging/LogAccessHttp.cc
index 3d12ebf..c3c24c2 100644
--- a/proxy/logging/LogAccessHttp.cc
+++ b/proxy/logging/LogAccessHttp.cc
@@ -1143,6 +1143,19 @@ LogAccessHttp::marshal_server_transact_count(char *buf)
-------------------------------------------------------------------------*/
int
+LogAccessHttp::marshal_server_connect_attempts(char *buf)
+{
+ if (buf) {
+ int64_t attempts = m_http_sm->t_state.current.attempts;
+ marshal_int(buf, attempts);
+ }
+ return INK_MIN_ALIGN;
+}
+
+/*-------------------------------------------------------------------------
+ -------------------------------------------------------------------------*/
+
+int
LogAccessHttp::marshal_cache_resp_status_code(char *buf)
{
if (buf) {
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/5ebaf4f8/proxy/logging/LogAccessHttp.h
----------------------------------------------------------------------
diff --git a/proxy/logging/LogAccessHttp.h b/proxy/logging/LogAccessHttp.h
index 47677de..a4720f4 100644
--- a/proxy/logging/LogAccessHttp.h
+++ b/proxy/logging/LogAccessHttp.h
@@ -115,6 +115,7 @@ public:
virtual int marshal_server_resp_time_ms(char *); // INT
virtual int marshal_server_resp_time_s(char *); // INT
virtual int marshal_server_transact_count(char *); // INT
+ virtual int marshal_server_connect_attempts(char *); // INT
//
// cache -> client fields