1 Answers
Let me try to explain in simple words.
Trace is for tracking latency/delays in the machines/services that your application is run on.
Monitoring is also for tracking latency issues(???), + other performance metrics
Here is an analogy: Imagine you have to monitor the time to transfer a network packet from Source (S) to Destination (D). You have to keep doing this activity for all the packets on the network from S -> D. Also you find out what is the average time it takes for the network packet to propagate. Additionally, you are also interested in trends on what time of the day packet transfer time is the highest and lowest.
To do all this you need two things: (1) you need a probe (or mechanism) to capture packet transfer time. (2) you need a system which can store information sent by the probe and also build analytics (dashboards + charts) to do timing analysis and predictions.
In this case Trace acts as a Probe and Monitoring system acts to capture telemetry data + dashboards
[Debugger is basically the same as Error Reporting?]
Debugger (either GCP Debugger or any other debugger) is used to debug the code for issues, by doing step-by-step debugging.
Error Reporting is a kind of analytic tool for errors; this tools keeps an eye on application logs and aggregates similar errors. This tool will alert the application teams when an error occurs and provides details on that error. Error Reporting comes first and the next step is debugging.
Hope this helps!