我正在使用TextWriterTraceListener将诊断消息记录到文本文件中.但是,我也不想记录添加的每条跟踪消息的时间戳.是否可以为侦听器定义一种自动添加时间戳的格式化程序?
目前我正在每次Trace.WriteLine()通话时手动添加时间戳,但这不是很舒服.
对于我的WPF应用程序,我使用TextWriterTraceListener记录到文本文件.如何将跟踪输出显示到文本框?
我一直试图设置跟踪日志记录一段时间,我根本无法让它正常工作.关于这个主题,它们没有太多错误/过时的文章.但有人可以给我一个良好而实用的设置,用于Azure的跟踪记录和查看(1.6)
我想要做的就是从我的应用程序捕获和查看跟踪消息的能力.
我从标准的DiagnosticMonitorTraceListener开始,但最终在表存储中.我不能为我的生活弄清楚我应该如何与表存储中的日志进行交互.在Visual Studio中,我可以"查看"它,但使用它非常麻烦,实际上没用.没有排序,必须编写繁琐的日期过滤器,其中一半的时间不起作用.
自定义日志似乎要走了.我用log4net做了很多工作,所以我选了那个.您可以将log4net重定向到跟踪,但最终会得到同样糟糕的表存储.它是自定义日志文件.现在,如果支持与否,我已经感到困惑了.有些文章提到诊断文件锁会导致各种问题.不确定这是否仍然存在问题,无论奇怪,为什么在无法读/写日志时提供自定义日志传输功能?!无论如何,我没有任何问题写入日志(我已经注意到).
设置是根据MSDN文章(额外模糊和非常分散btw).在ServiceDefinition(128Mb)中定义LocalStorage元素.在角色启动中添加目录日志传输.走.这似乎有效.直到一段时间之后,角色在重启期间陷入困境,而且还没有足够大的消息,角色就会消失而且拒绝出现.即使在4080Mb内也有太多可用空间,这根本没有意义.
再次关注增加配额的文章,但这些似乎更糟糕.在ServiceDefinition中将DiagnosticStore大小设置为8Gb.不行.仍然疯狂,只有更高的数字.将OverallQuota设置为等于8Gb也无济于事.出于某种原因,在干净的图像上安装工作正常,但是当重新启动或更新时,它决定以不同方式计算配额.无论DiagnosticsStore的大小如何,"计算"值始终为OverallQuota + Log4Net LocalStorage.我所做的一切似乎都没有改变.非常令人沮丧,因为它似乎工作,只是在一段时间后死亡.
我也尝试过diagnostics.wadcfg,但无法让Azure接收它们.我确保将它们复制到根输出文件夹,并从我的代码中删除对监视器的任何更改.Nada,zip ...浏览了我在实例上可以找到的所有日志文件.在任何地方都没有一个提及或错误.
为什么Azure上这么难?跟踪日志是任何应用程序的最基本的日志记录工具.这实际上是在破坏Azure体验.
我正在通过缩小的CKFinder来源寻找alert正在被解雇的地方.我强制文件在上传时被重命名,现在每当文件上传时它就会提醒我实际上并不重要.
我已经完成并评论了每个,alert但它仍然在做.刷新缓存,并通过Chrome Inspector确认.有没有办法弄清楚这个特定警报来自哪个文件/行?
情况如下:复杂的Web应用程序无法正常工作,并且可能始终如一地产生不需要的行为.问题的原因尚不清楚.
建议:跟踪所有javascript代码的执行路径.本质上,生成两个怪异的日志,然后可以将其输入diff算法以确定与bug相关的行为开始发散的位置(因为应用程序行为不明显,并且理解并获取实际JS代码的副本)由于必须切换到Web检查器并从Web检查器中复制出许多页面,因此运行起来很困难.所有页面都与Perl代码动态拼接在一起这一事实,其中JS代码的重要部分仅存在于(动态......)Perl字符串).
Chrome中的Web Inspector没有关于记录执行跟踪的选项.基本上我想要的是按执行顺序执行的每一行JS的日志.鉴于JS VM是单线程的,我认为这不是一件难事.问题很简单,现有的面向用户的工具并不是为这么多的核心调试而设计的.如果我们在Dev Tools中查看Profiler,它显然能够提供我需要的那种仪器,但它基本上是为了进行分析而不是跟踪.
我怎么能开始这个?我可以通过某种方式从源代码构建Chrome
我对Chrome的开发方面没有任何经验.那么例如链接到Chrome/Chromium/Canary的dev-builds/branches/versions/distros(有什么区别?)是受欢迎的.
在这一点上,似乎使用强大的js跟踪来检测浏览器仍然比重新设计有缺陷的应用程序更容易.页面的体系结构是一场灾难,但功能很复杂,几乎完全有效.我只需要找到一个缺失的部分.
或者,如果已存在此类工具,我可以搜索哪些其他关键字?"代码追踪"几乎是我唯一可以提出的.
我测试了dynaTrace,这是一个快乐的巧合,因为我们的应用程序支持IE(确实Chrome支持刚刚测试版),但这不会产生文本转储,它基本上产生了一个巨大的 Win32 UI expando-tree,这是不可能的差异.这让我非常难过,因为我知道让跟踪的表现形式显示出来更加困难,但事实证明它几乎完全无用.除了网络应用程序的玩具示例之外,谁会在树视图中上下滚动并查看其中真正有用的任何内容?
好的,不要笑.在2005年,我读到了使用System.Diagnostics命名空间的跟踪,它很复杂,我从那时起就使用了log4net和NLog(其他人都是如此).
今天,我的应用程序将托管在Windows Azure网站上,并使用我们的老朋友Trace.
http://azure.microsoft.com/en-gb/documentation/articles/web-sites-enable-diagnostic-log/
沾沾自喜,我总是使用抽象,IoC,所以我只是写一个新的小垫片来写,Trace但它只有TraceInformation,TraceWarning和TraceError.
有一些Write*方法,但我不知道他们最终会在什么情况下结束.可怕的API.[噱头]
哪种方法适用于详细/调试级别?
编辑:从标题中删除"Easy one".显然不是.
我的应用程序没有像我期望的那样表现.在设备进入休眠状态(黑屏)并打开后,设备会显示我的应用程序的屏幕,但稍后屏幕的一部分会消失 - 工具栏下方的选项卡式viewpager.
我在我的应用程序正在做任何事情的最后一点设置了一个断点,屏幕仍然很好,所以这是系统正在做的事情,但我不知道是什么.
有没有办法打开堆栈跟踪,以便记录系统从该点开始使用的非常方法,也许这将使我能够找出选项卡式viewpager消失的原因?
我应该提到应用程序仍然正常运行,我可以从工具栏中打开导航抽屉并使用它的所有功能但我再也看不到选项卡式viewpager,直到我重新创建它.
Angular2中有没有办法为异步代码获得更好的调用堆栈?我一直认为,跟踪setTimeout(),发出的事件,Promises等的执行上下文是Zone的优势之一?
我构建了一个plunker示例,它显示了一个常见的场景,无法跟踪错误.
我有以下示例场景:
@Component({
selector: 'my-component',
template: `
<div>
<button (click)="doSmth()">Cause an async error!</button>
</div>
`
})
export class MyComponent {
@Output() error = new EventEmitter<any>(true);
public doSmth(): void {
this.error.emit('Oh snap!');
}
}
@Component({
selector: 'my-app',
template: `
<div>
<my-component (error)="handleError($event)"></my-component>
</div>
`,
})
export class App {
private error = "";
public handleError(reason: any): void {
Promise.reject(reason)
}
}
@NgModule({
imports: [ BrowserModule ],
declarations: [ App, MyComponent ],
bootstrap: [ App ]
})
export class AppModule {} …Run Code Online (Sandbox Code Playgroud) 我有一个小的Perl程序.该程序加载一个模块.该模块使用XSLoader加载.so文件.这个Perl在Linux上运行,用gcc构建-DDEBUGGING,随后是.so文件.我可以重新编译.
执行Perl程序时,如何跟踪.so文件中的C函数?我需要按照它们运行的顺序知道函数的名称.拥有函数参数也会很好.