Wednesday, March 10, 2021

    Preparation for deploying API services to the cloud (continued...)

This is a continuation of the previous post.  Some more considerations follow:

  1. Ensure that the application logs information at relevant points in the code. 

  1. Although servers hosting the applications may have their own logs, it is necessary for the code that executes to log as well, because it would make that code execution transparent. 

  1. Exceptions and errors are not the only points of interest. Even success cases could be logged because they would help with auditing what has transpired so far. 

  1. Verbose logging should not be ignored since disk space is not a concern nowadays and such logging will help with new systems. 


  1. Timestamps, Host information is included in each log entry. 

  1. Timestamps are critical for time-series sequences. This is relevant not only from the perspective of identifying log entries but also provides machine local information as opposed to a global view across machines.  

  1. Host information on each entry is helpful because we may not need to know the IP address of the server corresponding to a logical name shared by others. 


  1. Key=Value pairs mentioned in the logging entry.  

  1. Very often we treat logging entries are English sentences. However, this is a machine language, and it would be better to replace something like this: 
    the share /ifs/data/foo was created. 
    To  
    Share Created:  share_name=’/ifs/data/foo’, user=’Rajamani’ 

  1. These key-value pairs come in very handy to pivot or search the data in key-value stores. 

  1. Most of the big-data vendors facilitate improved analytics when key-values are present. 


No comments:

Post a Comment