Jstack和没有足够的存储空间可用于处理此命令 [英] Jstack and Not enough storage is available to process this command

查看:270
本文介绍了Jstack和没有足够的存储空间可用于处理此命令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在我的java应用程序上运行jstack命令。应用程序相当大,在jboss AS内部运行,占用大约4GB的内存。操作系统是Windows Server 2003标准版。每次我收到错误没有足够的存储空间来处理此命令。有足够的RAM,16GB和磁盘空间。那么,有什么想法吗?

I'm trying to run jstack command on my java application. Application is rather big, running inside jboss AS occupying about 4gb of memory. OS is Windows Server 2003 Standard edition. Every time i get an error "Not enough storage is available to process this command". There is enough ram, 16gb, and disk space. So, any ideas?

推荐答案

我最近在Win2008r2上碰到了这个问题并认为我需要一段时间才能分享我的解决方案弄清楚。 Rob关于psexec -s的评论是为我做的。

I ran into this recently on Win2008r2 and thought I'd share my solution since it took a while to figure out. Rob's comment about psexec -s is what did it for me.

似乎在Vista和后来的jstack因用户上下文而无法对服务起作用。它与记忆无关。我怀疑这是人们在2003年通过远程桌面看到这个问题的原因,除非你在mstsc上使用/ admin或/ console开关。从Vista开始,收紧的安全性可能就是破坏它的。

It appears that on Vista and later jstack doesn't work against services because of the user context. It has nothing to do with memory. I suspect this is the same reason people have seen this problem on 2003 via remote desktop, unless you use the /admin or /console switch on mstsc. As of Vista the tightened security is probably what broke it.

从cmd窗口启动我的应用程序工作正常,但这无助于我调试我们的标准安装。启用java调试端口(对于VisualVM,Eclipse或大多数Java调试器)需要重新启动应用程序,因此如果您尚未启用调试,则会丢失您可能尝试捕获的状态。在我的用户凭据下启动服务不起作用 - 我对此感到有些惊讶。但是psexec -s从系统上下文运行jstack,它就像一个魅力。哦,如果启用了UAC,你需要从高架cmd提示符运行psexec。

Starting my app from a cmd window worked fine, but that doesn't help me debug our standard install. Enabling the java debug port (for VisualVM, Eclipse or most any Java debugger) requires an app restart, so you lose the state you're probably trying to capture if you don't already have debugging enabled. Starting the service under my user credentials did not work - I was a little surprised at that. But psexec -s runs jstack from the system context, which worked like a charm. Oh, and you'll need to run psexec from an elevated cmd prompt, if UAC is on.

这篇关于Jstack和没有足够的存储空间可用于处理此命令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆