Cloud Monitoring

Many things can go wrong with the app server. Knowing potential issues before they escalate will avoid many headaches later.

This is precisely why we have developed a Cloud monitoring app to keep an eye on things from your mobile device.

Announcing Nester Probe Cloud Monitoring

Nester Probe v1.0.0 supports the following feature set.

  • Query app logs from the remote server.
  • A pie chart that gives an overall status in terms of the error levels.
  • Focus on the detail of a log item.
  • The status of the server via the Netdata interface.

The source code is available on Github and the link is provided below.

App Logs

The logging.AddNesterLog(...) function call enables and sets the level of verbosity of the logger.

The log produced by the platform contain items with the Source field. This is used to trace back to the component that produced the error.

The log tables

The logs are maintained for 7 days in the nest_log table. The table schema is found below.

fieldtype
utc_time (microseconds)long
neststring
cushionlong
levelstring
namestring
event_idstring
messagestring

The log storage can be searched using regular SQL syntax and the Nest API.

curl -u username:password' -X GET --header 'Accept: application/json' \
--data 'sql=select * from nest_log' https://codesearch.nestapp.yt/v1/logs

The system maintains 4 other key metrics in tables system_cpu, system_io, system_ram, system_ip in addition to the app logs. These tables are used to find correlations in the environment when things fail.

For example a app log item indicating an exception being thrown can be traced to spike in RAM usage.

Netdata

Your app is installed in a dedicated Virtual Machine (VM). The VM metrics are collected by a Netdata service. The data are indexed and maintained for 1 hour.

Netdata alerts are generated when system resources such as memory and disk space are becoming dangerously low. The alerts will appear on Slack if the app is integrated with Slack.

The system provides full transparency of your app server. All crucial data including things such as uptime are collected and stored for your examination. The app provides an interface to Netdata metrics as shown in the image above.

You are able to query each metric via the Nest API in addition to examining the metrics on the graphical interface.

App Design Tidbits

With the release of Xamarin Forms 3.0 you are able to design user interfaces using Cascading Style Sheets (css). The first iteration of the app uses css in parts to layout the user interface components.

It is even possible to incorporate Sass into the process flow. A tutorial by Judy McNeil of the Xamarin University is found here.

Another useful addition is Flex layouts as used in html/css. I now use the Flex Layout in situations where I used the Grid most often.

Conclusion

The app is an excellent cloud monitoring tool for your API or your web app. The source code is provided so that your own special monitoring requirements are easily incorporated if needed.

The Android version is presently available at the Google Play Store. The Link to the Play Store is provided below.

Further Information