Client / Server Correlation Values Anthony Berglas
Customer Requirement Need to be able to include client context in server logs E.g. Which storage device is being processed? Need to be able to store server context in client logs So can ask server administrator “What went wrong with request s739c983nf?” Good logging is essential for security and usability
Proposed Solution Add Client Correlation as a simple string in request header Add Server Correlation as a simple string in response header Server should log Client Correlation value Server should be able to identify log record using Server Correlation value
Example Request <RequestMessage> <RequestHeader> <ProtocolVersion> … <ProtocolVersion> <BatchCount type="Integer" value="1"/> <ClientCorrelation type=“TextString” value=“sid=s348sa3d”/> </RequestHeader> …
Example Response <ResponseMessage> <ResponseHeader> <ProtocolVersion> … </ProtocolVersion> <TimeStamp type="DateTime" value="2012-04-27T08:14:42+00:00"/> <BatchCount type="Integer" value="1"/> <ServerCorrelation type=“TextString” value=“s34:d8a8g7fd900a9d”/> </ResponseHeader> …
Conclusion Very simple additions Enhance logging and analysis capabilities Important information for forensic analysis Very helpful information for diagnosing issues