使用 EL 4.0 日志块时的日志文件锁定
使用 EL 4.0 可以更好地避免创建名称前带有 GUID 的新文件吗?如果我不想每次文件被锁定时都创建一个新文件。我可以采取什么最好的方法来避免这种情况。
Using EL 4.0 makes it any better to avoid creating new file with a GUID prepended to its name? If I dont want to create a new files every time the if the file is locked. What is the best possible approach I can take to avoid this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您定义的每个基于文件的跟踪侦听器都将锁定输出文件。如果无法记录该文件,则 GUID 将添加到文件名前面。这就是您所看到的行为。
通常,这是由多个跟踪侦听器尝试记录到单个文件或多个进程尝试记录到单个文件引起的。
为了避免这种行为,请确保每个输出文件仅使用一个跟踪侦听器。如果您尝试从多个进程记录到一个文件,那么您可以考虑使用数据库跟踪侦听器或使用集中式日志记录服务(例如 经销商服务)
Each file based trace listener that you define will lock the output file. If the file cannot be logged to then the GUID will be prepended to the file name. This is the behavior you are seeing.
Usually this is caused with multiple trace listeners trying to log to a single file or multiple processes trying to log to a single file.
To avoid this behavior ensure that you are using only one trace listener per output file. If you are trying to log to one file from multiple processes then you could consider a database trace listener or using a centralized logging service (e.g. Distributor Service)
Enterprise Library 5.0 有一个功能可以支持此问题。这也可以通过使用 Windows 中的消息队列对请求进行排队来解决。
Enterprise library 5.0 has a feature to support this issue. This also could be resolve by queuing the request using Message Queue in windows.