Welcome!

Java IoT Authors: Elizabeth White, Mano Marks, Liz McMillan, Mehdi Daoudi, Kevin Benedict

Blog Feed Post

Building custom monitor with Pentaho Kettle

free-website-monitoringMonitis open API and available collection of open source monitoring and management scripts provide nice possibility for finding solutions for monitoring your systems. Still there are many cases when you need a specific monitor and do not have or don’t want to spend much time on coding. That is the reason of presenting the very simple and easy way of building custom monitors with Pentaho Data Integration suite.

Pentaho Data Integration (PDI) – Kettle is a free, open source ETL (Extraction, Transformation and Loading) tool. Along with powerful data extract, transform and load capabilities, Kettle provides intuitive and rich graphical design environment – Spoon. Spoon is a fast and easy way for building applications without writing a code. Drag and drop interface allows to graphically construct transformations and jobs.

To start with Kettle we recommend the following tutorial, it is a help with installation and introduction to Spoon; PDI user guide and brief introduction to Kettle components.

In our article we want to present a very simple way of building custom monitor using Spoon. Moreover, our goal today will be monitoring of a business performance data opposite to usual system or application monitoring. Actually monitored data can be any information extracted from your database that needs to be shared and/or monitored. We’ll build a monitor that based on SQL query, will trace test table Orders, randomly populated with data, by order statuses. In this case number of orders grouped by current status (In Process, On Hold, Shipped and Cancelled) will act as metrics for our custom monitor.

To start, please, just have a look at Monitis API documentation. For creating custom monitor we need to implement the steps described below:

1.       Authentication – using Monitis API key and secret key (keys are available from your Monitis account: Tools->API) we need to get authentication token that will be used further for creating monitor and posting data.

For that, the following transformation

was created, using transformation steps listed below:

  to provide API url, API key, secret key and other request parameters for API calls
  HTTP request for Authentication token
  Json input for parsing result of Authentication token request
  and selection of needed parameter to be used later

 

After testing, we will implement small changes for converting created transformation to sub-transformation by simply adding Input and Output Specification as a start and end steps and removing info about API and secret key from parameters. This information will be provided in main transformations as an input for Authentication sub-transformation. Actually, we have created building block for our next steps which can be used in other transformation without any changes.

 

2.       Creating monitor

 

Here Data Grid steps are used for providing necessary input information:

  API key and secret key in User data, as an input for Authentication  sub-transformation
  monitor parameters
  and metrics description

User Defined Java Expression step and Group By step for constructing parameter list for create monitor API call:

All the parameters are grouped by the Join Rows “Add Monitor Param” step resulting as an input for Add Monitor HTTP Post request . Write to Log step is providing information on transformation execution results where Data field is the ID of created monitor and will be used in the next transformation.

 

3.       Posting metric results for custom monitor

As an input here along with the user data (API and secret keys) we have Custom Monitor ID – result of Create Monitor transformation and Table Input step, which will retrieve the necessary information from database.

HTTP Post step will execute API call for posting monitor data.

 

4.       Creating a job

The only thing left is just creating a simple job to run the transformation for posting metric results.

After test you can use any scheduler to run the created job using Pentaho Kitchen, a standalone command line process that can be used to execute jobs.

And here we can see our custom monitor on Monitis dashboard.

 

 

Using these simple transformations as a basis, you can create monitors by just changing input parameters and SQL query in Table Input step for retrieving metric data. Moreover, instead of Table Input step any other transformation Input, Utility, Lookup or Scripting step can be used as a source for monitored data. That will allow you to access relational and NOSQL databases and log files or data input of any format (CSV, JSON, XML, YAML, Excel, plain text …); to base monitor on script execution, Java classes or shell/process output; HTTP, REST and WSDL requests; fetch data from Google analytics account – just feel free to explore rich collection of Spoon transformation steps.

 

Share Now:del.icio.usDiggFacebookLinkedInBlinkListDZoneGoogle BookmarksRedditStumbleUponTwitterRSS

Read the original blog entry...

More Stories By Hovhannes Avoyan

Hovhannes Avoyan is the CEO of PicsArt, Inc.,

@ThingsExpo Stories
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...
WebRTC is bringing significant change to the communications landscape that will bridge the worlds of web and telephony, making the Internet the new standard for communications. Cloud9 took the road less traveled and used WebRTC to create a downloadable enterprise-grade communications platform that is changing the communication dynamic in the financial sector. In his session at @ThingsExpo, Leo Papadopoulos, CTO of Cloud9, discussed the importance of WebRTC and how it enables companies to focus o...
Big Data engines are powering a lot of service businesses right now. Data is collected from users from wearable technologies, web behaviors, purchase behavior as well as several arbitrary data points we’d never think of. The demand for faster and bigger engines to crunch and serve up the data to services is growing exponentially. You see a LOT of correlation between “Cloud” and “Big Data” but on Big Data and “Hybrid,” where hybrid hosting is the sanest approach to the Big Data Infrastructure pro...
In his General Session at 16th Cloud Expo, David Shacochis, host of The Hybrid IT Files podcast and Vice President at CenturyLink, investigated three key trends of the “gigabit economy" though the story of a Fortune 500 communications company in transformation. Narrating how multi-modal hybrid IT, service automation, and agile delivery all intersect, he will cover the role of storytelling and empathy in achieving strategic alignment between the enterprise and its information technology.
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
"LinearHub provides smart video conferencing, which is the Roundee service, and we archive all the video conferences and we also provide the transcript," stated Sunghyuk Kim, CEO of LinearHub, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Things are changing so quickly in IoT that it would take a wizard to predict which ecosystem will gain the most traction. In order for IoT to reach its potential, smart devices must be able to work together. Today, there are a slew of interoperability standards being promoted by big names to make this happen: HomeKit, Brillo and Alljoyn. In his session at @ThingsExpo, Adam Justice, vice president and general manager of Grid Connect, will review what happens when smart devices don’t work togethe...
"There's a growing demand from users for things to be faster. When you think about all the transactions or interactions users will have with your product and everything that is between those transactions and interactions - what drives us at Catchpoint Systems is the idea to measure that and to analyze it," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York Ci...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
Discover top technologies and tools all under one roof at April 24–28, 2017, at the Westin San Diego in San Diego, CA. Explore the Mobile Dev + Test and IoT Dev + Test Expo and enjoy all of these unique opportunities: The latest solutions, technologies, and tools in mobile or IoT software development and testing. Meet one-on-one with representatives from some of today's most innovative organizations
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in Embedded and IoT solutions, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 7-9, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/Big Data, HPC and E...
SYS-CON Events announced today that Linux Academy, the foremost online Linux and cloud training platform and community, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Linux Academy was founded on the belief that providing high-quality, in-depth training should be available at an affordable price. Industry leaders in quality training, provided services, and student certification passes, its goal is to c...
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
"Matrix is an ambitious open standard and implementation that's set up to break down the fragmentation problems that exist in IP messaging and VoIP communication," explained John Woolf, Technical Evangelist at Matrix, in this SYS-CON.tv interview at @ThingsExpo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
WebRTC sits at the intersection between VoIP and the Web. As such, it poses some interesting challenges for those developing services on top of it, but also for those who need to test and monitor these services. In his session at WebRTC Summit, Tsahi Levent-Levi, co-founder of testRTC, reviewed the various challenges posed by WebRTC when it comes to testing and monitoring and on ways to overcome them.
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
Every successful software product evolves from an idea to an enterprise system. Notably, the same way is passed by the product owner's company. In his session at 20th Cloud Expo, Oleg Lola, CEO of MobiDev, will provide a generalized overview of the evolution of a software product, the product owner, the needs that arise at various stages of this process, and the value brought by a software development partner to the product owner as a response to these needs.