系统日志中的WMI错误如何处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统日志中的WMI错误如何处理相关的知识,希望对你有一定的参考价值。
Event filter with query "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA "Win32_Processor" AND TargetInstance.LoadPercentage > 99" could not be reactivated in namespace "//./root/CIMV2" because of error 0x80041003. Events cannot be delivered through this filter until the problem is corrected.
详细信息
-
System
-
Provider
[ Name]
Microsoft-Windows-WMI
[ Guid]
1edeee53-0afe-4609-b846-d8c0b2075b1f
[ EventSourceName]
WinMgmt
-
EventID
10
[ Qualifiers]
49152
Version
0
Level
2
Task
0
Opcode
0
Keywords
0x80000000000000
-
TimeCreated
[ SystemTime]
2014-04-17T13:43:31.000000000Z
EventRecordID
15431
Correlation
-
Execution
[ ProcessID]
0
[ ThreadID]
0
Channel
Application
Computer
MSIGE60
Security
-
EventData
//./root/CIMV2
SELECT * FROM
__InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA "Win32_Processor"
AND TargetInstance.LoadPercentage > 99
0x80041003
http://support.microsoft.com/kb/2545227本回答被提问者采纳
部署为 .war 文件时如何处理 Rails 中的上传和日志?
【中文标题】部署为 .war 文件时如何处理 Rails 中的上传和日志?【英文标题】:How to handle uploads and logs in Rails when deployed as a .war file? 【发布时间】:2015-04-16 15:09:58 【问题描述】:我正在尝试在 Warbler (Tomcat) 和/或 Torquebox 4 (Wildfly) 的帮助下使用 .war 文件在 jRuby 上部署 rails。我面临的问题是,在这种情况下,我不知道如何使用 Carrierwave 或 Paperclip 处理上传。 理想情况下,上传应该存储在战争之外,因为它可能随时被更新版本的应用程序替换。 在将应用程序作为war文件打包到/home/username/uploads(权限设置为777)目录之前,我尝试在公共目录中创建符号链接(上传),但这不起作用(我收到500错误) .
另外,我如何在部署 war 文件后访问 production.log?或者我应该把日志放在哪里?
更新 我想出了如何配置 Carrierwave 以在战争文件之外存储上传:
if Rails.env.development?
CarrierWave.configure do |config|
config.root = "/Users/Username/username_uploads/uploads"
end
elsif Rails.env.production?
CarrierWave.configure do |config|
config.root = "/home/username/username_uploads/uploads"
end
end
现在 Carrierwave 可以毫无问题地上传文件,但是当我尝试查看它们时出现 404 错误。 我试图在war文件中包含一个指向uploads文件夹的符号链接,但没有成功。我尝试在运行 warble war 之前创建它,以及在应用程序部署到 Tomcat 之后(在 app_name 文件夹内)。
知道如何解决这个问题吗?
更新 2 我在这里找到了一个可行的解决方案: Configure Symlinks for single directory in Tomcat
简而言之:
cd 进入 tomcat 创建的分解的 war 目录(你可以在 tomcat/webapps 下找到它)(如果上传的 war 文件的名称是 yourapp.war 那么目录名称将是 Tomcat 8 中的 yourapp )。
使用sudo mkdir uploads
创建一个上传文件夹
创建挂载点:sudo mount --bind /path/to/actual/upload/directory/uploads uploads
我还没有用 Wildfly 测试过,但我会在今天晚些时候或明天测试。如果我没记错的话,默认情况下它不会自动分解war文件。
我仍然想知道针对该问题的更多、更简单、不同的解决方案,以及对我找到的解决方案的看法。
【问题讨论】:
您好,您找到解决此问题的方法了吗?我也在尝试找出应用程序日志文件的存储位置。 嗨,遗憾的是我还没有弄清楚这些。我在github上问了carrierwave的人,但他们告诉我在这里问。但正如你所见,没有答案。 我还问了 Github 的 Paperclip 人,我得到了这个建议:“你试过炸毁 war 文件吗?我正在用 Tomcat 做这个,上传文件似乎可以工作。否则,我” d 可能会看看在其他地方指定路径:github.com/thoughtbot/paperclip#understanding-storage" - 不过我还没有时间尝试这个。如果它适用于您,请在此处分享,因为它也可能适用于 Carrierwave。 你试过我的解决方案了吗?我有一个正在生产中的工作应用程序,我像这样解决了它。 【参考方案1】:只是在不同的方法上深思熟虑......
使用“基于云”的存储服务可以解决资产上传和服务问题,如果您需要第二个节点,它还可以更轻松地扩展应用程序,
它还可以减少扩展应用程序的需要,因为您可以有效地将 ruby 传统上处理不好的大数据操作委托给不同的服务
Amazon S3 是显而易见的选择,but check out Riak too
【讨论】:
嗨,博佐!谢谢回复。是的,我考虑过这一点,但我仍然想知道如何在没有基于云的存储服务的情况下完成这项工作。 我也是 :) 我会关注 :) 作为一个兴趣点,你是如何进行开发的?我尝试用 Rails&Torquebox 做一个项目,最后把它交给了 Sinatra&Puma,因为重启需要 4 分钟,在开发中使用它很荒谬【参考方案2】:我认为您在使用此解决方案时遇到的问题:
if Rails.env.development?
CarrierWave.configure do |config|
config.root = "/Users/Username/username_uploads/uploads"
end
elsif Rails.env.production?
CarrierWave.configure do |config|
config.root = "/home/username/username_uploads/uploads"
end
end
是您将图像存储在 rails 公用文件夹之外,因此 rails 无法再为它们提供服务。 Carrierwave 正在按照您的预期正确上传所有内容,并创建相对于存储目录的链接。 如果您使用默认的 #Rails.root/public 存储,rails 会为您的图像提供服务,因为任何来自公共的内容都会被提供(也包括静态 html 或其他资产)。由于 Rails 不再提供这些服务,因此由您来提供服务。
也许您可以直接通过 Tomcat 为它们提供服务(因为我没有 Tomcat 配置方面的专业知识,您必须自己解决这个问题)。这可能会更快,因为请求超过了 rails 堆栈。
【讨论】:
感谢您的意见。是的,你在这里很好地描述了这个问题。我最近用一个可行的解决方案更新了我的问题,但我仍然不知道这是否是“最佳实践”。 我猜上面的方法有点笨拙,因为你失去了战争文件的所有内容。我已经研究过了,我认为别名是 Tomcat 处理此类事情的方式(blog.openshift.com/… 参见第 5 步)。如果您可以忍受爆炸的战争和挂载点,或者在战争爆发后创建符号链接的一些额外脚本,这也应该没问题,尽管直接在 tomcat 中提供这些文件肯定比通过 rails 提供它们要快。跨度> 我刚刚尝试设置别名但没有成功。我在 rails config 目录中创建了一个 context.xml 并配置了 warbler ( config.script_files 我认为您应该在 tomcat 中而不是在 Rails 文件中进行此配置:th1rty7.blogspot.de/2009/05/…。也许还有一个选项可以将这些信息放入战争中,但我想你可以先尝试一下 tomcat 配置,看看它是否有效。在那里,您可以指定一个路径,提供文件的位置和目录的路径。您可以从 rails 生成的链接中查看路径配置是如何完成的。【参考方案3】:默认情况下,Tomcat 不遵循符号链接(出于安全原因)。要启用此功能,您必须在 server.xml
的 Host
标记内添加以下内容:
<!-- Tomcat 7: -->
<Context allowLinking="true" />
<!-- Tomcat 8: -->
<Context>
<Resources allowLinking="true" />
</Context>
查看docs 和最新的migration guide。
【讨论】:
我最近尝试过这个,但是当我尝试访问上传的资产时,我仍然从 rails 收到 404 错误。也许这是我的一个误解:我在 server.xml (Tomcat 8)中找不到 Context,但是有一个 context.xml 文件,我在其中进行了上述更改但没有成功。我应该在 server.xml 中添加一个 Context 块并尝试这种方式吗? 抱歉,我的回答不是很清楚。我更新了。 另一个问题是,据我所知(从这里:***.com/questions/6691413/…),莺 gem 不支持符号链接(但如果我错了,请纠正我)所以我需要创建它们Tomcat在服务器上炸毁war文件后。有没有一种方法可以让我将特定于应用程序的 context.xml 或 server.xml 放在我的 rails 应用程序中,它可以完成相同的工作(当然,莺会将这些放在 META-INF 或 WEB-INF 中)? 我认为你是对的,Warbler 不支持符号链接。您可以在config/tomcat
的应用程序中拥有配置server.xml
,然后对其进行符号链接。我不知道是否可以将server.xml
拆分为不同的文件。【参考方案4】:
如果您可以提供您的日志,那么诊断问题会容易得多(我认为这个问题只是在生产中,因为您在询问如何访问该日志?)。转到 rails 应用程序目录并查看 log/production.log
这些日志级别通常较低,因此您可能必须将它们配置为提供更多信息 config/enviroments/prouction.rb
应该有一个 config.log.level
这可能设置为 info
将其设置为 @987654325 @ 以获得更详细的日志记录。
【讨论】:
我认为您不理解我的问题。问题是我如何存储(如果您阅读了我的更新就可以解决)并从莺或扭矩箱 4 gem 生成的 .war 文件之外提供用户上传的文件。 我阅读了这个问题(和更新),我的理解是您现在可以存储它,但仍然无法通过 404 错误来检索它,查看您的日志中关于 404 的内容将有助于找出问题所在(您的问题还询问了如何访问日志,因此我提供了详细信息)。 是的,问题是检索用户上传的文件。当我尝试访问上传的文件时,我从 rails 得到 404,但是我无法访问生产日志,因为日志目录(在 WEB-INF 中)是空的。问题很可能与上面所说的小按钮有关。 我用一个可行的解决方案更新了我的问题,但我仍然不知道这是否是解决这个问题的最佳方法(我也需要在 Wildfly 上进行测试)。跨度>以上是关于系统日志中的WMI错误如何处理的主要内容,如果未能解决你的问题,请参考以下文章