This is a continuation of the blog post series about using Microsoft monitoring tools to monitor a Philips Hue Bridge as an example of how to monitor an API based device.
To jump back to the first page of the series and the table of contents, click here.
Introduction and Device Setup
So, we are going to monitor a device with an API. This means it is not a machine where we can install an agent on, such as an MMA agent for SCOM or Azure Monitor. We will have to talk to the device in another way.
My home automation includes a Philips Hue Bridge and some of their smart lights and sensors.
This is a Philips Hue Bridge. It is a hub for home automation purposes. The description from the website about Hue Bridge:
The brains of the Philips Hue smart lighting system, the Hue Bridge allows you to connect and control up to 50 lights and accessories. Simply plug it in and use the Hue app to set routines, timers, custom light scenes, and more.
Next, I have some light bulbs which work on Bluetooth and Wi-Fi connection. These can be connected to the Hue Bridge.
You can get these in white or different shades of light, or very colored versions. There are also different formats available. I connected these to the Hue Bridge, so I can manage them using the Hue App, but also by connecting the Hue Bridge to Google Home Automation. So I can manage the lights by talking to the google home mini devices.
Also I have a few of these Hue Motion Sensors:
The idea of these is that if you walk into a room, the motion sensors sees movement and turns on the lights. In the middle of the device is the motion sensor. There is also a small light sensor right above the middle. The function of this is for example that you can set different light scenario’s depending on the time of day and such.
I have 1 Bridge, 2 motion sensors (living room and bath room), and a few light bulbs (in the same rooms and also some other rooms).
Why monitor these?
Well first of all: Just because we can.
Second: What if we can use a monitoring connection to some home automation devices and stitch pieces of data together? Perhaps we can use it to setup alerts if certain sensor data goes outside thresholds and we can setup automation beyond what the built-in home automation can do.
Also: Data coming from sensors can be combined. For example, if you have a light sensor close to an outside window and you have solar panels. You would expect the solar panel output to be related to the light levels outside, perhaps with a little delay.
But foremost: These are just some home automation devices. In the real world there are IOT devices, devices related to industry, solar parks, hospital equipment, and so forth. It is likely that if you are reading through all of this, that you have some devices which you do want to monitor, in datacenters, hospitals, outside areas or industry and you want to monitor those and display their output and act upon disturbances.
This is an example of how it can be done.
What else is needed?
Well, a home automation system is usually not connected to an enterprise grade monitoring system like Microsoft SCOM is. But since I have some test environments in a datacenter somewhere, I figure I can connect things up. Normally it would be easier to monitor devices in the same network this way. If you do not have SCOM for example, you can check what other monitoring methods are available. For example Azure Monitor, which we will get into at a later stage.
While reading about the Hue Bridge and talking to the API it has, it turns out that I need a device on the same internal subnet to talk to it. So, I will need my desktop to be the one talking to it for now. My desktop is a Windows 10, so I can throw a SCOM agent on it. And thus at the same time this is the MMA agent I can use to talk to Azure Monitor as well.
Now you know what this is about and the devices are introduced, the next step is to gain access to it and to play with some PowerShell to see if there is some data to be had from the devices.