Harsh Binani

@binaniharsj

OzCode: now use debugging as a service

Cloud computing has transformed the face of modern computing. Now companies can save the cost of having own server by hosting the application of the clouds. With the advancement of cloud computing, the cost of software maintenance, deployment and hot fixing has really become cheaper than having sever on your premises. Although with the change in the computing scenario the challenges are also new.

Production debugging is one of the challenges that companies are facing these days. Preventing these kinds of bugs from appearing is ideal. Ozcode is continually working in the direction of reducing the time taken to debug these kinds of bugs that arise during the production and other stages. The name ozcode may sound new to you, let me first give a brief introduction to the company. It is an Israeli startup that concentrates in providing debugging solutions. The company is funded by project investment company RDC and TPY of Israel.

It is seen that almost fifty per cent of the time is wasted on debugging by a developer, the company plans to reduce the debugging time drastically. The company also visualizes the challenges developers faces to resolve the bugs in the production phase and the amount of cost the developing company has to face because of the bug in this stage. It is estimated that the exception initiated in the production phase is comparatively high than the bug found in the development or testing phase. The serious of the bug found in the production stage can be severe as it can cause damage of the product or even customer loss.

Debugging during the production stage is very difficult and often leaves the developer to do the guesswork. But Ozcode’s cloud debugging is as friendly as local debugging. Ozcode has made investigating to a great degree simple for the engineers by pinpointing the correct moment of failure in the cloud computing. Ozcode likewise utilizes “pre-bugging” arrangement with the goal that the bug can be found and settled before they occur.

The debugging extension of Ozcode can be experienced in Microsoft visual studio, Ozcode Azure Devop is its latest presentation that can be availed through Microsoft Azure cloud.

Production debugging with Ozcode

Production debugging begins at the production stage. This the phenomenon that appears when any failure or exception happens in the application. This can be detected with tools various tools available. These tools give the details of the exceptions that had occurred, which helps the developer to resolve the issue.

Ozcode works a bit advance by integrating with these tools and taking a snapshot at the time of failure and displaying them in the debugger, which acts similar to an IDE.

Debugger-as — a — service platform has some more added advantages as it allows time travel debugging, in which a developer can create “ what if” scenarios and can make live changes in the code while sitting in the browser, this thereby eliminates the trouble of taking the application to the local machine then debugging and then deploying it to the cloud.

At the end of the day, we can state Ozcode has transformed the experience of debugging by giving it a feel of working in the local machine while working in their IDE.

Perceptions from Azure Devops

For the cause of production debugging, Azure Devop extension is needed for the installation of Ozcode.

After Ozcode gets installed, it will integrate with the application it will gain insights into Azure subscription and will add debugging abilities for the production.

• The developers will get full details of failure starting from the date of occurrence, type of exception, occurrence number and the number of users who got affected by the failure.

• It creates a debugging session for the failures.

• The debugging session that got created is then assigned to the Azure board work items.

One more feature of Ozcode is in addition to production debugging it allows the managers to manage the failures effectively.

Creation of a debugging session

With Ozcode you can create a debugging session in several ways:

• Visual studio extension of OZcode.

• From Application insight for failure.

• From dump files that were captured during production.

Sharing a debug session is similar to sharing a file on OneDrive or DropBox, it is very secure and can be safely shared within your organisation and even with your Azure Devop team and Devops solutions provider.

After sharing the session, anyone can comment on the file the scenario is much like whatsapp group chat. The session allows you to comment on a particular variable value so that the person reading the chat understands what the root cause of the exception is. One more advantage of this debugging session is that you can make the variations to your code and see the results. The changes that you make can be saved as a code fix proposal, that can be viewed by other team members, and they can comment on it.

Ozcode has made the debugging session as a combination of pull request and visual studio share for production debugging.

Debugging with visual studio

Ozcode debugger is mainly focused on providing a platform for production debugging and root cause analysis of an exception and is equally helpful for collaborative debugging. This is extremely useful for cloud computing scenario as it can save your teams time. It is extremely useful for dealing with regressive bugs.

If your developers have Ozcode extension, then he can easily share the debugging session from visual studio.

The debugging session can be shared with the people with whom you want to share within your organisation, can be attached to the Azure Board work team and can also be used for collaboration and debugging. The debugging session has the advantage of revisit, which can be helpful for the developer if any regressive exception pops up, he can revisit the interactive session and can gain an instant understanding about the bug, its root cause and how it got fixed.

Supporting languages

Presently the ozcode cloud debugging is available for C# for dot net framework and dot net core. They are making arrangements for JavaScript and TypeScript presently.

Redaction of information

The challenges a developer may face while doing Production Debugging is securing the personally identifiable and sensitive information. But in the case of Ozcode debugger a developer cannot download the memory dump and any sensitive information stored in it. Instead, it displays the debugging history through a browser-based debugger window that supports redaction. The debugger was designed keeping all the constraints in mind. The project administrator of Azure Devop can control the information that needs to be redacted.

Security

Security holds the foremost importance, and security during the production debugging cannot be taken lightly. The production debugging with ozcode cloud debugging have given the topmost priority with an end to end safety.

Conclusion:

This new debugging tool will make production debugging faster and more productive than it was thought before. Some of the patented debugging technology that the customers of Ozcode will experience are discussed as under:

• The developers can enjoy interactive debugging in the browser itself.

• Security is given the topmost priority while debugging

• The developer can practice original time-travel debugging.

• Developers can retrieve the failure code or dump instantly from the source code. There is absolutely nothing to worry about the pdbs.

• Collaborating with the team about the exception can happen by sharing, commenting, links to the specific exception and proposal to change the code.

• It can also generate code automatically to create a unit test for a production scenario.

• For production debugging, redaction of PII is incorporated.

In short, we can say the features of Ozcode includes redaction of personally identifiable information, live coding & instant verification, dumps analysis, automatic testing of production user cases and is fully traceable.

I would love to know what do you think of the service? Problem solver or one which will need some more work?

More by Harsh Binani

Topics of interest

More Related Stories