Welcome!

Java IoT Authors: Pat Romanski, Yeshim Deniz, Liz McMillan, Elizabeth White, Zakia Bouachraoui

Related Topics: Cognitive Computing , Java IoT, @CloudExpo, @DevOpsSummit

Cognitive Computing : Article

PaaSt Times By @HoardingInfo | @DevOpsSummit [#DevOps]

One of the biggest mistakes a PaaS consuming organization can make is to ignore the log data from their PaaS system

PaaSt Times
by Chris Riley

Boy was I naive. When I first learned about the term PaaS, I threw it away quickly into a metaphorical garbage can. Of course you need your servers I thought. This was about five years ago. But now, I realize how silly that was.

While IaaS is still the primary back end for applications, there are many out there that contain a combination of PaaS and IaaS, and a rare handful that are 100% PaaS. And for both of these scenarios the importance of log management and analysis remains.

PaaS is an abstraction of the server. A services layer that can run independently of any IaaS and provide specific functionality like a NoSQL back end, MySQL, workers etc. The nice thing about PaaS is that all infrastructure considerations are up to the vendor. And in fact, the infrastructure your PaaS services are running on probably changes frequently.

Importance of logging on PaaS

The downside to PaaS is that if the need arises to get server level access for special patches, add-ons, configurations, etc you can't. So for whatever PaaS solution you use, it will need to be vanilla. Unless you have the resources and breadth to build an internal PaaS solution, which is also possible.

There are, usually small, applications which are 100% PaaS. For example a stack could be:

  • Azure Websites - Application Layer
  • GitHub - Source Repository
  • MongoLabs - NoSQL Backend
  • ClearDB - MySQL backend
  • Azure Cache - in Memory key/value store
  • Azure Machine Learning - data manipulation
  • Visual Studio Online - release automation

With the above stack you will never touch a VM, in fact you cannot.

A lot of tooling in the market is also PaaS. For example for the end-user Logentries is a PaaS solution. It would be more commonly considered SaaS, but because they have an API for log ingestion and consumption it's also "PaaS."

A hybrid scenario is where a similar stack to the above has components on IaaS. Such as AWS compute running a manually configured instance of MySQL that has to integrate with all the other PaaS services.

In IaaS it is obvious how to setup, and what to log in your log analysis system. You get admin level access to your VM. You install your agents. And then you pick your data sources. But with PaaS you cannot do this. This does not mean you should not log your data however.

Especially in the hybrid scenario where you need to correlate data from the other services with your infrastructure data. This is especially important in 100% PaaS solutions where you need to know what is going on with data you may not necessarily have access to. But how do you get PaaS into your log analysis system?

The biggest challenge in  getting logs out of your PaaS solutions is that the ideal implementation, the solution provider gives you the logs directly, the setup is unique for each. And you are walking on ice with vendor changes.

For example it is cool that Microsoft provides you logs for Azure websites. You have to setup and retrieve the data in visual studio, but it is all there, and pretty easy to consume. In this case you would most likely write a separate application, on your backend, to periodically download and store these logs in your log analysis service. This might be similar to what the agents do for IaaS, except you are writing the agent. If you want to be really tricky you could setup a worker on Azure Worker Role, or AWS Background Task in Elastic Beanstalk. PaaS to log PaaS.

And with other solutions, especially DBs, you can download, via a REST call, XML or JSON formats of all transaction logs over a short period of time. Here you would make two calls simultaneously to download, and store into your log system.

This is a lot of work, and there is an easier way. And that is to create your own wrapper for PaaS logging. This is a very nice way to log every call to, or event received, from your PaaS solution. And it would live within the application itself. You can use a log variable that always takes the result of every call to the PaaS solution, or an even more comprehensive way is a function that takes the call, and logs all actions around it, even start, and end times.

If you plan ahead you can actually extend all your functions for your PaaS components to do this automatically. So after it's set-up the developer doesn't even need to think about it. The hardest part is making sure it's in your standard design pattern or corporate development standards. And making sure IT understands that a developer is going to need to set this up.

One of the biggest mistakes a PaaS consuming organization can make is to ignore the log data from their PaaS system.

If you do, your log analysis service is standing on one leg. And you can get misleading information about an outage. For example your PaaS provider caused an unhandled exception due to lost packets or request timeout. Without the proper logs this will look like your IaaS server receiving the result had an issue, but really it was your PaaS provider.

As the trend of hybrid applications grows, some PaaS and some IaaS, this all becomes even more critical. And instead of waiting for it to bite you, build a wrapper around your PaaS services so they can be logged along with everything else.

More Stories By Trevor Parsons

Trevor Parsons is Chief Scientist and Co-founder of Logentries. Trevor has over 10 years experience in enterprise software and, in particular, has specialized in developing enterprise monitoring and performance tools for distributed systems. He is also a research fellow at the Performance Engineering Lab Research Group and was formerly a Scientist at the IBM Center for Advanced Studies. Trevor holds a PhD from University College Dublin, Ireland.

IoT & Smart Cities Stories
When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...
Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
Digital Transformation is much more than a buzzword. The radical shift to digital mechanisms for almost every process is evident across all industries and verticals. This is often especially true in financial services, where the legacy environment is many times unable to keep up with the rapidly shifting demands of the consumer. The constant pressure to provide complete, omnichannel delivery of customer-facing solutions to meet both regulatory and customer demands is putting enormous pressure on...
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
SYS-CON Events announced today that IoT Global Network has been named “Media Sponsor” of SYS-CON's @ThingsExpo, which will take place on June 6–8, 2017, at the Javits Center in New York City, NY. The IoT Global Network is a platform where you can connect with industry experts and network across the IoT community to build the successful IoT business of the future.
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
DXWorldEXPO | CloudEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
Disruption, Innovation, Artificial Intelligence and Machine Learning, Leadership and Management hear these words all day every day... lofty goals but how do we make it real? Add to that, that simply put, people don't like change. But what if we could implement and utilize these enterprise tools in a fast and "Non-Disruptive" way, enabling us to glean insights about our business, identify and reduce exposure, risk and liability, and secure business continuity?