Google Launches Machine Query Language in General Availability for Cloud Monitoring
Recently, Google announced the general availability of the Machine Query language used by developers in cloud monitoring. The Machine Query language is built to allow IT developers to perform some metric analysis, charting, root cause analysis, logic study, and several other functions.
The MQL represents a decade of learnings and vast improvements in the structure of the general metric query language utilized by Google.
In creating ratio-based charts and important alerts, MQL is useful for such instances.
In instances where mathematical and logic operations are performed with respect to query languages, MQL can be an available tool to that effect.
MQL is widely used in the implementation of new labels that can consolidate data and further aggregate them.
The building blocks of MQL is the operations and functions.
MQL has successfully taken cloud monitoring to the next level especially in performing arbitrary percentages, calculations, alerting and several other related functions.
Machine Query language is built using functions and operations and is linked to ensuring the building of complex queries incrementally. It is represented with vast learnings and upgrades that have been done over the years on Google’s internal metric query language, and the beauty is that it is now available for Google production and, of course, Cloud users, so they have an opportunity to carry out advanced querying through the Cloud Monitoring Metrics Explorer.
The Cloud Monitoring Metric Explorer can be used to create and follow up on queries as they relate to workspace specifications. As soon as the Query Editor is accessed on the platform, create a query and click the Query editor button then it converts the existing query to an MQL query and the result is shown in the image below:
Furthermore, MQL runs on the principle of two building blocks; operations and functions. The operations are connected together through the process where the output of one returns as the input for the next one and this data channelling is called ‘pipe’ idiom.
The ‘pipe’ idiom explains how ‘pipe()’ creates a pipe, a unidirectional data channel that can be used to foster communication between processes. It uses an array called ‘pipefd’ that returns two file descriptors (pipefd & pipefd) which refers to the read and write end of the pipe. This pipe allows the fetching of metrics and applies the operations required using MQL.
In a use case where a distributed web service has been built and ran on the compute engine VM instances with the load balancing feature being utilized, there will be a need to analyze the rate of errors and this interprets the need for monitoring tools. From this process, you can deduce the request-failure ratio report, which shows the ratio of requested HTTP 500 error responses to the system’s total number of requests.
Another use case for MQL is setting up an Alert Policy where a threshold condition can be set in the query, then the required test will run and send a return signal if the required ratio threshold conditions are not met.
Lastly, Time Shifting is another use case for MQL where data can be moved from the past to the current time period so the values could be compared and time analysis could be performed at its best.
MQL has taken Cloud monitoring to a higher level as Google has made this generally available for complex calculations, alerting, processes, operations connections, amongst many others. Check out the documentation, languages, and references to learn more about how Machine Query Language operates.