问题标签 [trace]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2634 浏览

c# - 使用 autoflush='false' 完成自定义 TraceListener (C#, .net)

我正在编写一个自定义跟踪侦听器来将跟踪消息写入添加轮换的文件(例如每天更改文件名)。
Flush方法的覆盖中,我调用Flush了底层StreamWriter,但如果我autoflush='false'在应用程序配置中设置,Flush则在应用程序终止时不会被调用。

应用程序退出时完成自定义跟踪侦听器的正确方法是什么?

编辑:我覆盖了该Dispose(bool disposing)方法,因为基TraceListener类已经实现了一次性模式,但是,据我所知,该方法没有被调用。如果我实现了显式析构函数,就会调用析构函数,但那时我不应该假设流引用仍然有效,对吧?

0 投票
3 回答
1749 浏览

winapi - Windows 上的低开销 I/O 监控

我想要一种低开销的方法来监视 Windows 进程的 I/O。

我得到了几个有用的答案来监控 Windows 中的进程完成的某些系统调用。最有希望的是使用 Windows Performance Toolkit 来获取内核事件跟踪。确实可以从那里提取所有必要的信息,但是 WPT 对于我需要的东西来说是一个巨大的过度杀伤力,因此会产生令人望而却步的开销。

我的想法是实现一种替代方法来检测 C/C++ 依赖图。通常这是通过向编译器传递一个选项来完成的(例如,-M)。这适用于具有此类选项的编译器和工具,但并非所有编译器和工具都这样做,而且那些经常以不同方式实现它们的编译器和工具。因此,我在 Linux 上实现了一种替代方法,使用 strace 来检测打开了哪些文件。以这种方式运行 gcc(例如)有 50% 的开销(大概的数字),我希望能找到一种方法在具有相似开销的 Windows 上执行此操作。

xperf 工具集有两个问题使我无法在这种情况下使用它们:

  • 无法监控单个进程的文件 I/O 事件;我必须使用内核事件跟踪来跟踪每个进程,从而生成大量数据(运行 gcc、YMMV 所需的时间为 15Mb)。
  • 由于必须使用内核事件跟踪,我必须以管理员身份运行。

我真的不需要内核级别的事件;我想如果我可以监控 Win32 API 调用 CreateFile(),如果我想捕获分叉进程,我可能会管理得一样好。

有什么聪明的主意吗?

0 投票
2 回答
696 浏览

wcf - 使用 ISAPI 过滤器来跟踪和计时 WCF 调用?

我正在使用 WCF 构建一个 Web 应用程序,该应用程序将被其他应用程序作为服务使用。我们的应用程序将安装在 Web 服务场上,并出于可扩展性目的进行负载平衡。有时我们会遇到特定于一台 Web 服务器的问题,我们希望能够从响应中确定请求由哪个 Web 服务器处理,以及可能的时间信息。例如,此请求由 WebServer01 处理,请求需要 200 毫秒才能完成。

想到的第一个解决方案是构建一个 ISAPI 过滤器来添加一个 HTTP 标头,该标头将这些信息存储在响应中。这让我觉得以前一定有人做过这种事情。有没有更好的方法来做到这一点,或者我可以使用现成的 ISAPI 过滤器?

提前致谢

0 投票
1 回答
10969 浏览

firefox-addon - Flash 10 调试器 flashlog.txt

我已经为 Firefox 3 安装了Adob​​e Flash Player 10 调试器,除了显示重绘区域外,我无法找到 flashlog.txt 文件或在线使用调试器功能。我已经安装了 FireFox 扩展“Flash Tracer”,它在理论上与我的 firefox 版本兼容,现在正试图让它工作。

我在 C:\Documents and Settings{user}\Application Data\Macromedia\Flash Player\ 下找不到 flashlog.txt 或日志目录,我确信我已正确安装调试器。我的 mm.cfg 文件不存在,我手动创建了它。Flash 跟踪器插件无法从 XP 组件应位于的位置读取文件。具体来说,它说

flashlog.txt 文件不存在。首先打开设置对话框。

我该怎么办?我真的需要这个插件才能正常工作。在此先感谢您的帮助!

0 投票
3 回答
568 浏览

c++ - 如何在编译时使用预处理器计算和存储哈希?

我有一个本机 C++ 程序,它使用“事件队列”在不同线程上执行函数。我在堆上分配了一个“事件”类,并将它放在我的一个线程队列中执行。

这一切都很好,但是很难追溯这些“事件”的起源。我希望每个“事件”都存储一些与其来源有关的信息。现在我使用内在_ReturnAddress()的,但我也想要文件名字符串和行号。我可以使用宏来安排我的“事件”。

当然,我不想为拥有这些字符串付出代价。

有没有办法让预处理器建立并转储以归档“id”=>“file,line”的映射,其中“id”每次我的宏扩展时都会增加一些唯一的数字?我可以将该 ID 存储为我的来源。

或者也许计算一个非常短的文件名哈希,以便我可以在运行时使用它?

欢迎任何想法。

0 投票
5 回答
5388 浏览

sharepoint - 共享点日志记录/跟踪

我如何在sharepoint中执行登录。我想使用跟踪。

以便它记录 12 个配置单元日志。

0 投票
1 回答
726 浏览

.net - .NET 单行日志记录 (ala Trace.Write/WriteLine) 使用 Instrumentation.Logging

我的问题是是否有可能获得 Trace.Write 和 Trace.WriteLine 方法的行/多行(非常不确定正确的术语)行为,但使用 .NET 2.0 中的 Microsoft Instrumentation Logging 框架。

期望的输出

我目前拥有的

我更喜欢使用检测来记录,而不是使用 Debug.Trace 写入日志文件。

编辑:仪表日志记录是指在我的 App.config 中使用“loggingConfiguration”块并使用 Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write(LogEntry logEntry); 编写日志条目

例如,Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FlatFileTraceListenerData、Microsoft.Practices.EnterpriseLibrary.Logging、Version=2.0.0.0。

Ta,已知颜色

0 投票
1 回答
5989 浏览

python - 我可以跟踪在 python 脚本中执行的所有函数/方法吗?

有没有办法以编程方式跟踪所有 python 函数/方法的执行?我想看看他们每个人都用什么参数来调用。我真的是说所有,我对跟踪装饰器不感兴趣。

在 Ruby 中,我可以为我想要的方法设置别名并在那里添加额外的行为。

0 投票
1 回答
235 浏览

.net - 跟踪过滤

如何在内置跟踪侦听器(例如System.Diagnostics.DefaultTraceListener和)上使用过滤System.Diagnostics.TextWriterTraceListener

我不想重写 write 方法并显式检查过滤,但是我找不到将级别附加到跟踪信息的方法?

0 投票
3 回答
3045 浏览

actionscript-3 - 在 Actionscript 3 中将像素转换为贝塞尔曲线

好的,所以我会尽量做到描述性。

我正在为需要上传图像的 jibjab 样式遮罩功能的客户开发一个项目。

我希望能够生成一个包含贝塞尔形状的锚点/控制位置的数据库可存储对象,因此我可以稍后将其拉出并重新屏蔽该对象。这一切都很容易做到,除了一个问题:我需要从用户绘制的轮廓创建贝塞尔对象。

到目前为止,这是我想象的过程:

在鼠标按下时,创建一个新的精灵、beginFill 和 moveTo 鼠标位置。

在鼠标移动时,lineTo 是一个 XY 坐标。

在鼠标上,endFill。

这一切都很好。我可以在这里存储信息,但我会看到一个巨大的对象,里面装满了大量非常无用的 x/y 坐标,除了在每个像素上放置句柄之外,没有办法真正进行微调更改。(我不妨给最终用户一个铅笔工具......)

就贝塞尔曲线计算而言,这就是我的想法:

1:弄清楚何时需要开始一条新曲线,并在此间隔上跟踪像素的 xy。我想象这只是一个像素数,也许只是在每次鼠标移动时增加一个计数变量,然后每 x 个像素创建一个新变量。这里的问题是一些曲线不准确,而另一些则不必要,但我真的只需要一个一般区域,而不是一个精确的表示,所以它可以工作。不过,我会更高兴一些更聪明的东西。

2:获取每个新的 x/y,将其存储为锚点,并计算出控件将在何处生成此锚点和最后一个锚点之间的直线曲线。这是我真正挂断电话的地方。我敢肯定有人已经在 Flash 中完成了这项工作,但似乎再多的谷歌搜索也无法帮助我找到完成这项工作的方法。我已经画了很多草图,还有什么小数学可以让我的大脑环绕,但似乎无法找到将像素转换为贝塞尔曲线的方法。

这可能吗?我真正需要的是接近相同形状的东西。我正在考虑可能只在下一个像素的角度相对于当前线或其他东西的角度超过 180 度时才放置锚点,并且只是抓住这些变化之间的弧线边缘,但无论我多么努力,我似乎无法弄清楚如何让它工作!

感谢您的帮助,我一定会在这里发布我的进展,我认为这在许多应用程序中都非常有用,只要它实际上是可行的......

杰西