Upcoming removal of earlier versions of Azure Storage Service APIs - How do I know if my code that uses Azure Storage is to be affected by upcoming API versions removal in December 2015?

 

Hi my name is Angshuman Nayak, I belong to the Cloud Integration Engineering (CIE) Team and work on issues related to Azure. This blog is intended to help with the following email which most of the Azure users would have received about the removal of older Azure Storage APIs.

Action recommended: Upcoming removal of earlier versions of Azure Storage Service APIs

Because Azure is removing earlier versions of the Storage Service APIs on December 9, 2015, we recommend that you upgrade to the latest version now, and then validate that your applications are continuing to run as expected.

https://view.email.microsoftemail.com/?j=fe8c17717c6d017d7d&m=fe621570756503797d1c&ls=fe2a1772706701747c1570&l=fec21c767365017e&s=fe251175766d067f761079&jb=ff62167876&ju=fe591275776d057b7612

The mail has a link to a blog by Jeff which details how to find the API version being used.

https://azure.microsoft.com/blog/2014/08/04/microsoft-azure-storage-service-version-removal/

It lists a lot of ways depending on the usage and I would strongly recommend that you read the blog in detail. In this blog I wanted to enumerate on the Storage Analytics Logs approach as a way to first isolate which all clients are using which versions and then take on the one that need modification.

Step 1 - How to Enable Storage Analytics Log and download the files?

The CIE team has already blogged about how to enable and download the logs, please refer the following blog and once you have the logs please proceed further.

https://blogs.msdn.com/b/cie/archive/2013/10/10/storage-analytics-logging-how-to-enable-and-where-to-find-the-logs.aspx

Step 2 – Add the header fields

Once the log file has been downloaded and formatted using the steps mentioned in the blog. Insert a Row at the top of the file and copy the following to the first Row. Again use the same Data > Text to Columns > Delimited > Semi Colon. Once done the header would align properly over the data. 

<version-number>;<request-start-time>;<operation-type>;<request-status>;<http-status-code>;<end-to-end-latency-in-ms>;<server-latency-in-ms>;<authentication-type>;<requester-account-name>;<owner-account-name>;<service-type>;<request-url>;<requested-object-key>;<request-id-header>;<operation-count>;<requester-ip-address>;<request-version-header>;<request-header-size>;<request-packet-size>;<response-header-size>;<response-packet-size>;<request-content-length>;<request-md5>;<server-md5>;<etag-identifier>;<last-modified-time>;<conditions-used>;<user-agent-header>;<referrer-header>;<client-request-id>

Once the formatting is done we can focus on the column Request Version.

If we see entries as following (Request Version less than 2/12/2012) then action needs to be taken on the code from which the Storage Account is being called.

clip_image002

For entries as following (Request Version equal or greater than 2/12/2012) things are fine for now. Though you may optionally choose to upgrade to the latest versions of Storage API.

clip_image004

Hope this blog helps you in identifying the affected Storage Accounts and then look at the Application using them and make relevant modifications.

Angshuman Nayak