[ 
https://issues.apache.org/jira/browse/TS-3881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sudheer Vinukonda updated TS-3881:
----------------------------------
    Description: 
I started off trying to write a TSHttpTxnCacheStateGet API to return cache 
lookup specific details, but, based on feed back on the IRC and dev@, changing 
the API to a more generic interface TSHttpTxnInfoGet to return any arbitrary 
info. The idea is to be able to use this API in the long term to support any 
arbitrary information related to a Txn (which can be used as the underlying 
piece for a framework to return txn info using custom log tags).

Below's the proposal with the info I'd like the new API return along with the 
API signature.

Please provide comments/suggestions.

{code}
+typedef enum {
+  TS_TXN_INFO_CACHE_HIT_RAM,
+  TS_TXN_INFO_COMPRESSED_IN_RAM,
+  TS_TXN_INFO_CACHE_HIT_RWW, // READ_WHILE_WRITE
+  TS_TXN_INFO_CACHE_OPEN_READ_TRIES,
+  TS_TXN_INFO_CACHE_OPEN_WRITE_TRIES,
+  TS_TXN_INFO_CACHE_VOLUME,
+  TS_TXN_INFO_LAST_ENTRY
+} TSHttpTxnInfoKey;
+

+/* Get Arbitrary Txn info such as cache lookup details etc as defined in 
TSHttpTxnInfoKey */
+/**
+   Return the particular txn info requested.
+
+   @param txnp the transaction pointer
+   @param key the requested txn info.
+   @param TSMgmtInt a pointer to a integer where the return value is stored
+
+   @return @c TS_SUCCESS if the requested info is supported, TS_ERROR otherwise
+
+*/
+tsapi TSReturnCode TSHttpTxnInfoGet(TSHttpTxn txnp, TSHttpTxnInfoKey key, 
TSMgmtInt *value);
+

{code}
+


  was:
I'd like to add a new API TSHttpTxnCacheStateGet() to be able to get more 
insight into cache operations (e.g read_while_write, open read tries, open 
write tries, cache volume used etc) on a given Txn. 

Below's the proposal with the info I'd like the new API return along with the 
API signature.

Please provide comments/suggestions.

{code}
+typedef enum {
+  TS_CACHE_TXN_STATE_HIT_RAM,
+  TS_CACHE_TXN_STATE_COMPRESSED_RAM,
+  TS_CACHE_TXN_STATE_READ_WHILE_WRITER,
+  TS_CACHE_TXN_STATE_OPEN_READ_TRIES,
+  TS_CACHE_TXN_STATE_OPEN_WRITE_TRIES,
+  TS_CACHE_TXN_STATE_CACHE_VOLUME,
+  TS_CACHE_TXN_STATE_LAST_ENTRY
+} TSCacheTxnStateKey;
+

+/* Get Cache state, useful for understanding the events in cache history */
+/**
+   Return the particular cache state info requested.
+
+   @param txnp the transaction pointer
+   @param key the requested cache state info.
+   @param TSMgmtInt a pointer to a integer where we will store the metric value
+
+   @return @c TS_SUCCESS if the metric is supported, TS_ERROR otherwise
+
+*/
+tsapi TSReturnCode TSHttpTxnCacheStateGet(TSHttpTxn txnp, TSCacheTxnStateKey 
key, TSMgmtInt *value);

{code}
+



> new TS API TSHttpTxnInfoGet
> ---------------------------
>
>                 Key: TS-3881
>                 URL: https://issues.apache.org/jira/browse/TS-3881
>             Project: Traffic Server
>          Issue Type: New Feature
>          Components: TS API
>    Affects Versions: 6.1.0
>            Reporter: Sudheer Vinukonda
>            Assignee: Sudheer Vinukonda
>             Fix For: 6.1.0
>
>
> I started off trying to write a TSHttpTxnCacheStateGet API to return cache 
> lookup specific details, but, based on feed back on the IRC and dev@, 
> changing the API to a more generic interface TSHttpTxnInfoGet to return any 
> arbitrary info. The idea is to be able to use this API in the long term to 
> support any arbitrary information related to a Txn (which can be used as the 
> underlying piece for a framework to return txn info using custom log tags).
> Below's the proposal with the info I'd like the new API return along with the 
> API signature.
> Please provide comments/suggestions.
> {code}
> +typedef enum {
> +  TS_TXN_INFO_CACHE_HIT_RAM,
> +  TS_TXN_INFO_COMPRESSED_IN_RAM,
> +  TS_TXN_INFO_CACHE_HIT_RWW, // READ_WHILE_WRITE
> +  TS_TXN_INFO_CACHE_OPEN_READ_TRIES,
> +  TS_TXN_INFO_CACHE_OPEN_WRITE_TRIES,
> +  TS_TXN_INFO_CACHE_VOLUME,
> +  TS_TXN_INFO_LAST_ENTRY
> +} TSHttpTxnInfoKey;
> +
> +/* Get Arbitrary Txn info such as cache lookup details etc as defined in 
> TSHttpTxnInfoKey */
> +/**
> +   Return the particular txn info requested.
> +
> +   @param txnp the transaction pointer
> +   @param key the requested txn info.
> +   @param TSMgmtInt a pointer to a integer where the return value is stored
> +
> +   @return @c TS_SUCCESS if the requested info is supported, TS_ERROR 
> otherwise
> +
> +*/
> +tsapi TSReturnCode TSHttpTxnInfoGet(TSHttpTxn txnp, TSHttpTxnInfoKey key, 
> TSMgmtInt *value);
> +
> {code}
> +



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to