0

stackdriver 如何调试生产中的应用程序?

在此期间服务器会停机吗?延迟如何?

有没有办法可以调试“已经发生”的事件?例如,我有一个在生产中运行的应用程序。还有一个问题——比如说,我无法将商品添加到购物车中,或者其他一些问题。我们可以回去调试问题吗?或者它是否调试实时应用程序?

4

2 回答 2

3

Stackdriver Debugger 的核心功能是快速拍摄您正在运行的操作的快照。这意味着您的服务器没有关闭,但也意味着您也无法及时返回。

Stackdriver Debugger 有一个快速入门各种其他文档,可用于基本了解产品的功能。

于 2016-05-17T13:18:35.203 回答
1

Stackdriver Debugger 是一个始终可用的完整服务调试器。您不只是调试单个服务器/VM,而是同时调试属于同一服务的所有服务器。它在条件满足时从单个服务器捕获调用堆栈和变量,然后从所有其他服务器取消快照。

Stackdriver Debugger 代理不会停止进程,但会短暂暂停命中快照行和条件的线程。通常线程会暂停大约 3 毫秒以捕获约 64K 的信息,您的时间可能会有所不同。

Stakdriver 调试器代理是从头开始编写的,目的是优化应用程序延迟。他们使用各种技巧来避免暂停正在运行的线程/服务器。(例如,数据的序列化发生在线程释放之后)

Stackdriver Debugger 是一个实时交互式调试器。现在真的有办法调试过去发生的事情。但是,由于它是生产调试器,您可以在生产中设置快照位置并等待事件再次发生。

Stackdriver Debugger 的另一项可能有用的功能是日志点。这些是日志语句,您可以在考虑特定案例/条件的情况下动态插入到应用程序中。您不必更改代码或重新部署您的服务。见文。

于 2016-06-24T21:32:47.703 回答