Last modified by Erik Bakker on 2024/02/22 12:35

From version 8.1
edited by Erik Bakker
on 2023/09/28 21:01
Change comment: There is no comment for this version
To version 1.1
edited by Erik Bakker
on 2022/06/13 11:22
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Determining cause of log entry
1 +advanced-monitoring-apigateway-statistics
Parent
... ... @@ -1,1 +1,1 @@
1 -Main.eMagiz Academy.Microlearnings.Advanced Level.Advanced monitoring.WebHome
1 +Main.eMagiz Academy.Microlearnings.Advanced Level.Advanced monitoring API Gateway.WebHome
Content
... ... @@ -1,60 +1,77 @@
1 1  {{container}}{{container layoutStyle="columns"}}(((
2 -{{error}}
3 -Note that the functionality mentioned in this microlearning will become obsolete when migrating to the 3rd generation runtime.
4 -{{/error}}
5 5  
6 -When something goes wrong within the process, you want to determine what caused the error to be raised. In earlier microlearnings, we learned how to determine the cause of error messages. Now, we shift our focus to the log entries. In eMagiz, errors can show up in the dashboard and the log entries. For this microlearning, we will look at the log entries and see how we can use that information to look at the flow to determine what part of the flow is causing the error.
3 +# Monitoring API Gateway statistics
4 +In your API Gateway solution, it is important to be able to review the API Gateway statistics. These statistics are available in Generation 3 based runtimes, and available via the Manage phase --> Monitoring Gen3
7 7  
8 8  Should you have any questions, please get in touch with academy@emagiz.com.
9 9  
8 +* Last update: March 17th, 2022
9 +* Required reading time: 5 minutes
10 +
10 10  == 1. Prerequisites ==
11 11  * Advanced knowledge of the eMagiz platform
12 -* Errors in the log that can be analyzed
13 +* Complete relevant API Gateway microlearnings from Crash course to Intermediate
13 13  
14 14  == 2. Key concepts ==
15 -This microlearning centers around determining the cause of log entry
16 -By determining the cause, we mean: Figuring out what was responsible for generating an error.
16 +The API Gateway statistics are geared towards understanding the level of interaction between the API callers and the webservice of the API gateway. With the objective to understand the bredth and depth of the usage of the operations published
17 17  
18 -* The component that raises the error could differ from the component that causes the error
19 -* A log entry error could be raised on runtime level or flow level but can be related to a specific part of the process
20 20  
21 -== 3. Determining the cause of log entry ==
22 22  
23 -When something goes wrong within the process, you want to determine what caused the error to be raised. In earlier microlearnings, we learned how to determine the cause of error messages. Now, we shift our focus to the log entries. In eMagiz, errors can show up in the dashboard and the log entries. For this microlearning, we will look at the log entries and see how we can use that information to look at the flow to determine what part of the flow is causing the error.
20 +
21 +## 3. API gateway statistics
24 24  
25 -* The component that raises the error could differ from the component that causes the error
26 -* A log entry error could be raised on runtime level or flow level but can be related to a specific part of the process
23 +Navigate to the Manage phase and select Monitoring Gen3. On the left hand side select API Management Statistics which opens a page as below. Ensure to select for what environment you want to see these statics
27 27  
28 -In eMagiz, you can find the log entries under Manage -> Log entries. Here you can focus your search by searching for a specific runtime. An example of an error that could be raised and shown in the log entries is any error introduced in the entry that causes the transaction to fail.
25 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-1.png]]
29 29  
30 -[[image:Main.Images.Microlearning.WebHome@advanced-active-monitoring-determining-cause-of-log-entry--example-error-log-entry.png]]
27 +### 3.1 API Requests
28 +This section displays the total number of requests made to the API Gateway. Can be valuable to understand if in a give timeframe requests are made or not. It contains all the requests * other sections will illustrate which requests more specifically.
31 31  
32 -When you have found the log entry, it becomes time to read it to see whether you can interpret the problem. For example, in this case, we that a message has been rejected in a filter component. When we read on, we see the name of the specific filter component that is throwing the error.
30 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-7.png]]
33 33  
34 -[[image:Main.Images.Microlearning.WebHome@advanced-active-monitoring-determining-cause-of-log-entry--example-error-log-entry-identify-the-problem.png]]
32 +### 3.2 Static resource request
33 +This shows the number of request made by the SwaggerUI which is considered a static resource. This can help to understand how often that SwaggerUI is used.
35 35  
36 -Now that we know the component that raised the error, we can navigate to the flow in which this component is used. You can determine based on the naming, but the flow's name is also shown on the log entry if it is known.
35 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-8.png]]
36 +
37 +### 3.3 Status per user
38 +This displays per application user what the HTTP response codes where. Based on that response code insight is provided around the behavior of that user such as unauthorized requests. Users are identified by part of their access credential (first part of API key or Client ID).
37 37  
38 -[[image:Main.Images.Microlearning.WebHome@advanced-active-monitoring-determining-cause-of-log-entry--example-error-log-entry-find-flow.png]]
40 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-6.png]]
39 39  
40 -When we navigate to the flow that is raising the error in our example, we see that a filter is in the flow that checks before the message can be further processed by eMagiz.
42 +### 3.4 Resources per user
43 +This displays per applciation user what resources are specifically used by that user. The colors indicate the resource which are listed as legend to the graph. By selecting a resource in the legend, you can toggle that resource to not display. The graph shows the total number of requests made.
41 41  
42 -[[image:Main.Images.Microlearning.WebHome@advanced-active-monitoring-determining-cause-of-log-entry--example-error-log-entry-analyze-flow.png]]
45 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-5.png]]
43 43  
44 -When we open the filter, we can see what check is done. By analyzing the check, we can determine whether the statement itself is faulty, a configuration error occurred, or whether input created earlier in the flow was the culprit in this case. For this example, we used an obvious error to make the problem clear to you. In real-life scenarios identifying the cause might take some additional work to determine the specific reason for your particular problem.
47 +### 3.5 Status per resource
48 +This display shows the HTTP response codes for every resource/operation available. Could help to understand the health and/or the validity of the operation for the application users.
45 45  
46 -[[image:Main.Images.Microlearning.WebHome@advanced-active-monitoring-determining-cause-of-log-entry--current-faulty-check.png]]
50 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-2.png]]
51 +
52 +### 3.7 Methods per resource
53 +Shows what HTTP methods are used for every resource/operation
47 47  
55 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-3.png]]
56 +
57 +### 3.8 Status for status resource / methods per static resource
58 +Shows the HTTP response codes and what HTTP methods are used by the Swagger UI
59 +
60 +[[image:Main.Images.Microlearning.WebHome@advanced-monitoring-apigateway-statistics-4.png]]
61 +
62 +
63 +
48 48  == 4. Assignment ==
49 49  
50 -Search for problems in the log and see if you can find out what caused these problems. This assignment can be completed with the help of the (Academy) project that you have created/used in the previous assignment.
66 +Take a moment to review your API Gateway solution and find the Manage * Montoring section to see the API management metrics. Review if you can understand these values
51 51  
52 52  == 5. Key takeaways ==
53 53  
54 -* The log entry shows which flow has raised the error
55 -* You need to read the log entry to interpret on which component the error is raised
56 -* With the information from the log entry, you can analyze the flow starting at the component that raised the error and move back in the process step by step
70 +* The API Management statistics are geared towards understanding the actual use of the API gateway.
71 +* That insight is handy to understand who does what and how often. Yet can also be used for trouble shooting.
57 57  
73 +
74 +
58 58  == 6. Suggested Additional Readings ==
59 59  
60 60  If you are interested in this topic and want more information, please read the release notes provided by eMagiz.
... ... @@ -61,6 +61,4 @@
61 61  
62 62  == 7. Silent demonstration video ==
63 63  
64 -This video demonstrates a working solution and how you can validate whether you have successfully completed the assignment.
65 -
66 -{{video attachment="advanced-active-monitoring-determining-cause-of-log-entry.mp4" reference="Main.Videos.Microlearning.WebHome"/}})))((({{toc/}}))){{/container}}{{/container}}
81 +As this is a more theoretical microlearning, we have no video that accompanies this microlearning.)))((({{toc/}}))){{/container}}{{/container}}