HawkFlow.ai Concepts
Sending data to Hawkflow.
Process
Process is the main required parameter when sending data to any HawkFlow.ai API endpoint. Process name is the main grouping parameter for anything you send through to HawkFlow.ai. This could be an App (web | mobile | command line) name, the name of a Machine Learning model, or the name of an ETL process. It should represent something that you would like to group everything under that name by.
Meta
Meta is the compliment parameter to process and is not required when sending data to HawkFlow.ai API endpoints. However it is very useful when you would like to filter your data in the UI. You should put in the meta parameter, everything that you would like to filter the process by. This could be any parameters you usually send to the app when it is running and that would be interesting to view monitoring about. It could be such things as a country or region, a client or account id, or any other meta data about the process. You will be able to filter the process by the meta parameter in the HawkFlow.ai App UI.
Monitoring Concepts
Trends
HawkFlow.ai will learn the characteristics of a process run time and then alert you if the process runtime is trending upwards over time.
You will get clear notifications as shown in the image below, and then be able to view the raw and historical data of that process.
Example notification of a process trending up
Example of a reporting on a process trending up
Over
Over represents the amount of time a process is running over time when compared to the average maximum time it takes to run. HawkFlow will calculate expected minimum and maximum run times for all process / meta combinations. A status of 'running over time' will be reported if the maximum expected time is exceeded.
You will get clear notifications as shown in the image below, and then be able to view the raw and historical data of that process.
Example notification of a process that has run or is running over time
You'll also get to see the raw data
Under
Under in Hawkflow represents the amount of time a process is running under time when compared to the average minimum time it takes to run. HawkFlow will calculate expected minimum and maximum run times for all process / meta combinations. A status of 'running under time' will be reported if the maximum expected time is exceeded. While most of the time it is good to have code run faster, a significant drop in processing time can indicate a serious issue, such as missing data.
You will get clear notifications as shown in the image below, and then be able to view the raw and historical data of that process.
Example notification of a process that has run or is running under time
You'll also get to see the raw data
Failures and reruns
A failed process will be reported if the process / meta combination is started, but then no end is received before the same process / meta is started. When this happens, the process / meta combination is deemed to have failed its previous run.
You can consider it as a process / meta combination must start and end to be successful. So, if a process / meta combination starts but does not end, then it will be considered a failed attempt to run that process.
You will get clear notifications as shown in the image below, and then be able to view the raw and historical data of that process.
Example notification of a process that has failed
You'll also get to see the raw data
A rerun, coloured above in grey, is partnered with failed process / meta combinations. If a process / meta combination fails, then the next start it receives will be considered a rerun. You can consider it as a process / meta combination must start and end to be successful. So, if a process / meta combination starts but does not end, then all following process / meta combination of that type will be considered reruns until one ends successfully.
Schedule
A missing process / meta combination is one that does not run when it is expected to run. HawkFLow.ai will detect the schedule for all process / meta combinations. If the process / meta combination then does not run on the expected schedule, it will be reported as missing.
Process / meta combinations can be excluded from this type of reporting in the App UI. This can be done from the Schedule page, or in the Exclusions part of the settings in the App UI.
Example notification of a process that has missed its scheduled time to run
You'll also get to see the raw data
Metrics Up or Down
The Hawkflow metrics API allows you to send any number to Hawkflow. This could be number of database rows, machine learning model accuracy, anything you can think of.
Hawkflow will learn about that number and alert you of any new highs or lows, big moves, or anomalies.
All you need to do is send us these values, and we will create a unique time series dataset for each one. From there you will be able to view charts, look at the raw data, track changes, and HawkFlow.ai will automatically let you know of any anomalies or trends in your data.
Example notification of a metric with an anomaly detected
You'll also get to see the raw data
Exceptions
Exceptions represent data that is sent to the HawkFlow.ai API exceptions end point. They are typically expected to be standard programming exceptions. You can vew exception details in the exception page of the HawkFlow.ai App.
Example notification of a metric with an anomaly detected
Example of an exception in the App UI
Running
Running means that this Process / meta combination is running right now. The UI will show you running process and the details of them, such as how long they have been running, when they were expected to start, and whether they are running over or under their expected runtime.
You will be able to see all your running processes in one place.