This topic explains the Application Live View UI features.
The Application Live View encompasses a sophisticated UI that provides visual insights into running applications by inspecting the application actuator information. The actuator data from the application serves as the source of truth. Application Live View provides a live view of the data from inside of the application only. Application Live View does not store any of the applications data for further analysis or historical views. This easy-to-use interface provides ways to troubleshoot, learn, and maintain an overview of certain aspects of the applications. It gives certain level of control to the users to change some parameters such as log levels, environment properties of running applications.
Application Live View UI includes the following pages and views:
The main page lists all the instances of the applications and gives high level metadata about each of them including name of the application, number of instances, framework, version, new patch version, new minor version, new major version, build version and alerts. If there is a new patch version for the framework available, the information is displayed in the info icon tooltip in the patch version column.
Whenever there is a state change to the instance, a notification is displayed in the UI. The user has option to disable these notifications by clicking the wheel icon on the top right corner of the page. This opens up a panel which has settings to disable status change and add-remove event notifications.
When the user clicks on any application instance from the landing page, the user is navigated to a new page which contains a side navigation bar listing all the pages and details of the instance.
Options on the side navigation:
- The user can go back to the main landing page by clicking on 'ALL APPS' link - The application name and instance id is displayed along with health status - When the users expands the 'Other instances' drop down, a list of all other instances under the application are displayed - The list of enabled actuator endpoints for the instance are displayed in the side nav
This is the default page loaded when the user clicks on the any of the instances in the landing page. This page gives a tabular overview containing the application name, instance id, location, actuator location, health endpoint, direct actuator access, framework , version, new patch version, new major version, build version.
The health page provides detailed information about the health of the application. It lists all the components that make up the health of the application like readiness, liveness and disk space. It displays the status, details associated with each of the components.
The Environment page contains details of the applications' environment. It contains properties including, but not limited to, system properties, system environment and configuration properties (like application.properties) in Spring boot application. In case of Steeltoe application, the details are retrieved from appsettings.json.
The page includes the below features:
* The UI has search feature that enables the user to search for a property or values * Each property has a search icon at the right corner which helps the user quickly see all the occurrences of a specific property key without manually typing in search field. Clicking on this button trims down the page to that property name * The Refresh Scope button on the top right corner of the page is used to probe the application to refresh all the environment properties * The user can modify existing property by clicking on the override button in the row and editing the value. Once the value is saved, the user can see the updated property in the Applied overrides section at the top of the page * The reset button is used to reset the environment property to the original state * The overridden environment variables in the Applied overrides section can be edited or removed * The Applied overrides section also enables the user to add new environment properties to the application
The log levels page provides access to the application’s loggers and the configuration of their levels. The log levels such as INFO, DEBUG, TRACE can be configured real-time by the user from the UI. The user can search for a package and modify its respective log level. The user has the ability to configure the log levels at a specific class and package. They can turn off all the log levels by modifying the log level of root logger to OFF. The reset button resets the log levels to the original state. The Reset All button on top right corner of the page resets all the loggers to default state.
This folder contains information about memory and threads of the application:
This page displays all the details related to JVM threads and running processes of the application. This tracks live threads and daemon threads real-time. It is a snapshot of different thread states. Navigating to a thread state displays all the information about a particular thread and its stack trace. The page also has feature to download thread dump for analysis purpose.
This page provides information about the application’s request mappings. For each of the mapping it displays the request handler method. It also displays the header metadata of the application such as produces, consumes and HTTP method. The search feature enables the user to search on the request mapping data. The toggle '/actuator/**' on the top right corner of the page displays the actuator related mappings of the application.
The HTTP Requests page provides information about HTTP request-response exchanges to the application. The graph visualizes the requests per second indicating the response status of all the requests. The response statuses include info, success, redirects, client-errors, server-errors. The search feature filters the traces based on the search field value. The trace data is captured in detail in a tabular format with metrics such as time stamp, method, path, status, content-type, length, time.
The refresh icon above the graph loads the latest traces of the application. The toggle '/actuator/**' on the top right corner of the page displays the actuator related traces of the application.
The Caches page provides access to the application’s caches. It gives the details of the cache managers associated with the application including the fully qualified name of the native cache. The search feature in the Caches Page enables the user to search for a specific cache/cache manager. The user has the ability to evict individual caches by clicking on the 'Evict' button which results in clearing of cache. All the caches can be evicted completely by clicking on 'Evict All' button on the top right corner of the page.
The sessions page provides information about the application’s HTTP sessions that are managed the framework's session. The session information contains Session Id, Created At, Last Accessed At, Expiry, Max Inactive Interval, Attributes. The user can search for an active session and get the associated details about the session. The user also can provide a username in the search bar which retrieves all the session information of the user. Individual sessions can be deleted by clicking on 'Delete' icon for the corresponding session. All sessions for a specific username can be deleted by clicking on 'Delete All' icon on the top right corner of the page.
The configuration properties page provides information about the configuration properties of the application. In case of Spring Boot, it displays application's @ConfigurationProperties beans. It gives a snapshot of all the beans and their associated configuration properties. The search feature allows the user to look up for property's key/value or the bean name.
The conditions evaluation report provides information about the evaluation of conditions on configuration and auto-configuration classes. In case of Spring Boot,this gives the user a clear view of all the beans configured in the application. When the user clicks on the bean name, the conditions and the reason for the conditional match is displayed. In case of not configured beans, it shows both the matched and unmatched conditions of the bean if any. In addition to this, it also displays names of unconditional auto configuration classes if any. The positive conditional matches are denoted by a green tick symbol and the negative matches are denoted by a warning symbol. The unconditional classes are denoted by a minus symbol. The user can filter out on the beans and the conditions using the search feature.
The scheduled tasks page provides information about the application's scheduled tasks. It includes cron tasks, fixed delay tasks and fixed rate tasks, custom tasks and the properties associated with them. The user can search for a particular property or a task in the search bar to retrieve the task or property details.
The beans page provides information about a list of all application beans and its dependencies. It displays the information about the bean type, dependencies and its resource. The user can search by the bean name or its corresponding fields.
The metrics page provides access to application metrics information. The user can choose from the list of various metrics available for the application such as jvm.memory.used, jvm.memory.max, http.server.request, etc. Once the metric is chosen, the user can view the associated tags. The user can choose the value of each of the tags based on filtering criteria. On clicking 'Add Metric' button, the metric is added to the page which is refreshed every 5 seconds by default. The user can pause the auto refresh feature by disabling the 'Auto Refresh' button. The user can also refresh the metrics manually by clicking on 'Refresh All' button. The format of the metric value can be changed according to the user's needs. They can delete a particular metric by clicking on the minus symbol in the same row.
The actuator page provides a tabular and a tree view of the actuator data. The user can choose from a list of actuator endpoints and parse through the raw actuator data.