Monitoring system
A system includes a network interface configured to communicate with a plurality of components across a network. The system also includes a memory system configured to store a plurality of instructions to implement a monitoring system and a processing system configured to communicate with the network interface. The processing device is further configured to execute the instructions to result in accessing one or more monitoring rules that define monitoring criteria associated with the components and monitoring the components to determine whether the monitoring criteria are met. The processing device can also trigger a notification to one or more user systems based on determining that at least one of the monitoring criteria has been met and provide a customization interface to allow user customization of the one or more monitoring rules.
1 . A system, comprising:
a network interface configured to communicate with a plurality of components across a network;
a memory system configured to store a plurality of instructions to implement a monitoring system; and
a processing system configured to communicate with the network interface and execute the instructions to result in:
accessing one or more monitoring rules that define monitoring criteria associated with the components;
monitoring the components to determine whether the monitoring criteria are met, wherein the monitoring comprises data-driven monitoring configured to monitor for data changes through the components, third-party service driven monitoring configured to monitor for condition changes associated with a targeted geographic area, and model-driven monitoring configured to detect one or more derived values or derived conditions;
triggering a notification to one or more user systems based on determining that at least one of the monitoring criteria has been met;
providing a customization interface through a graphical user interface to allow user customization of the one or more monitoring rules, wherein the customization interface provides editing of the monitoring criteria and a chatbot interface configured to suggest setting the monitoring criteria in a guided mode through the graphical user interface, and wherein the guided mode is invoked based on determining that a user-submitted query cannot be parsed and built into a valid monitoring rule, the guided mode is user-invocable based on a user selection through the graphical user interface, and invoking the guided mode initiates a question and answer dialog in an interactive chat session to build the valid monitoring rule through answers to questions through the graphical user interface and select between the data-driven monitoring, the third-party service driven monitoring, and the model-driven monitoring; and
suggesting, through the chatbot interface, setting the monitoring criteria based on one or more usage patterns of one or more users identified as having at least one shared characteristic with a user of the customization interface.
2 . The system of claim 1 , wherein the monitoring system comprises a plugin configured to be embedded within a host webpage or application.
3 . The system of claim 1 , wherein the monitoring system comprises an application comprising a standalone front-end interface.
4 . The system of claim 1 , wherein the components comprise one or more third-party data services.
5 . The system of claim 4 , wherein the one or more third-party data services comprise one or more of a weather service, a wildfire service, and a flood service.
6 . The system of claim 1 , wherein the monitoring system comprises an intent classification service configured to apply natural language processing to extract an intent and one or more entities from a user input.
7 . The system of claim 6 , wherein the monitoring system comprises a rule creation service configured to create or modify the one or more monitoring rules based on the intent and the one or more entities.
8 . The system of claim 1 , wherein the monitoring system comprises a registry configured to store metadata to access the components, the one or more monitoring rules, and one or more results of executing the one or more monitoring rules.
9 . The system of claim 8 , wherein the monitoring system comprises a rule execution service configured to execute the one or more monitoring rules and filter the one or more results based on one or more categories.
10 . The system of claim 8 , wherein the monitoring system comprises a notification service configured to output the notification to the one or more user systems and allow viewing of data associated with the one or more results through a user interface.
11 . The system of claim 1 , wherein the customization interface provides editing of one or more aspects of the notification.
12 . The system of claim 1 , wherein the monitoring system comprises an input cleanser configured to translate user input into a format that complies with one or more formatting rules.
13 . The system of claim 1 , wherein the monitoring system comprises a chart builder configured to generate one or more charts associated with monitored data from the components.
14 . The system of claim 1 , wherein the monitoring system comprises a scheduler service configured to schedule the monitoring of the components with respect to the one or more monitoring rules.
15 . The system of claim 1 , wherein the monitoring system comprises a query service configured to access one or more databases as part of the monitoring to determine whether the monitoring criteria are met.
16 . The system of claim 1 , wherein the components comprise services accessed through one or more application programming interfaces through the network interface, and the notifications are passed through a visualization application programming interface that interfaces with one or more applications and/or webpages.
17 . The system of claim 16 , wherein the monitoring system comprises a plugin configured to be embedded within the one or more applications and/or webpages, and the plugin is configured to trigger an action through the visualization application programming interface to request performance of the action by the monitoring system based on detecting a selection of the plugin.
18 . A computer program product comprising a non-transitory computer-readable storage medium embodied with computer program instructions that when executed by a computer cause the computer to implement:
accessing one or more monitoring rules that define monitoring criteria associated with a plurality of components;
monitoring the components to determine whether the monitoring criteria are met, wherein the monitoring comprises data-driven monitoring configured to monitor for data changes through the components, third-party service driven monitoring configured to monitor for condition changes associated with a targeted geographic area, and model-driven monitoring configured to detect one or more derived values or derived conditions;
triggering a notification to one or more user systems based on determining that at least one of the monitoring criteria has been met;
providing a customization interface through a graphical user interface to allow user customization of the one or more monitoring rules, wherein the customization interface provides editing of the monitoring criteria and a chatbot interface configured to suggest setting the monitoring criteria in a guided mode through the graphical user interface, and wherein the guided mode is invoked based on determining that a user-submitted query cannot be parsed and built into a valid monitoring rule, the guided mode is user-invocable based on a user selection through the graphical user interface, and invoking the guided mode initiates a question and answer dialog in an interactive chat session to build the valid monitoring rule through answers to questions through the graphical user interface and select between the data-driven monitoring, the third-party service driven monitoring, and the model-driven monitoring; and
suggesting, through the chatbot interface, setting the monitoring criteria based on one or more usage patterns of one or more users identified as having at least one shared characteristic with a user of the customization interface.
19 . The computer program product of claim 18 , further comprising computer program instructions that when executed by the computer cause the computer to implement:
applying natural language processing to extract an intent and one or more entities from a user input; and
creating the one or more monitoring rules based on the intent and the one or more entities.
20 . The computer program product of claim 18 , further comprising computer program instructions that when executed by the computer cause the computer to implement:
executing the one or more monitoring rules;
filtering one or more results of executing the one or more monitoring rules based on one or more categories; and
storing the one or more results in a registry.
21 . The computer program product of claim 18 , further comprising computer program instructions that when executed by the computer cause the computer to implement:
scheduling the monitoring of the components with respect to the one or more monitoring rules; and
accessing one or more databases as part of the monitoring to determine whether the monitoring criteria are met.
22 . The computer program product of claim 18 , further comprising computer program instructions that when executed by the computer cause the computer to implement:
providing one or more sample queries associated with one or more entities based on a user profile of a user accessing a monitoring system;
processing a new query request using natural language processing based on detecting a user selection;
determining a monitoring type for the new query based on one or more interactions between the monitoring system and the user;
presenting the user with one or more questions to guide query formation of the new query; and
configuring one or more monitoring rules based on one or more user responses to schedule execution of the new query.
23 . The computer program product of claim 18 , wherein the components comprise services accessed through one or more application programming interfaces through a network interface, and the notifications are passed through a visualization application programming interface that interfaces with one or more applications and/or webpages.
24 . The computer program product of claim 23 , wherein the computer program instructions implement a monitoring system, and the monitoring system comprises a plugin configured to be embedded within the one or more applications and/or webpages, and the plugin is configured to trigger an action through the visualization application programming interface to request performance of the action by the monitoring system based on detecting a selection of the plugin.