Java Weblogc BEA-000449:关闭套接字,因为在配置的 5 秒空闲超时期间没有从中读取数据

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/2973822/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-13 15:06:12  来源:igfitidea点击:

Weblogc BEA-000449 : Closing socket as no data read from it during the configured idle timeout of 5 secs

javaweblogic-10.x

提问by Mahesh Nair

I have started seeing this message in my weblogic 10 log files. I am running an app with around 40-350 concurrent users. My questions are

我已经开始在我的 weblogic 10 日志文件中看到这条消息。我正在运行一个有大约 40-350 个并发用户的应用程序。我的问题是

  1. What does this error really mean
  2. How will it affect the users (if it does)
  3. What could be causing this
  1. 这个错误到底是什么意思
  2. 它将如何影响用户(如果有)
  3. 什么可能导致这种情况

thanks

谢谢

回答by matt b

What does this error really mean

这个错误到底是什么意思

Weblogic is closing a socket used to communicate with one of the server's clients because no data has been sent for more than five seconds, which is the value you have configured for Weblogic's idle timeout.

Weblogic 正在关闭用于与服务器客户端之一进行通信的套接字,因为超过五秒没有发送数据,这是您为 Weblogic 的空闲超时配置的值。

What could be causing this

什么可能导致这种情况

Client programs connecting to your server, sending some data, and then either 1) not closing the connection or 2) disappearing.

客户端程序连接到您的服务器,发送一些数据,然后 1) 不关闭连接或 2) 消失。

回答by venkat

Taken from Oracle's document:

摘自 Oracle 的文档:

E-WL: WebLogic Logs Warning Message: "<BEA-000449>Closing socket as no data read from it on xx.xxx.xxx.xxx during the configured idle timeout of 5 secs" (Doc ID 1423761.1)

E-WL:WebLogic 日志警告消息:“<BEA-000449>在配置的 5 秒空闲超时期间,由于没有从 xx.xxx.xxx.xxx 上读取数据而关闭套接字”(文档 ID 1423761.1)

The message is a warning and typically has no user impact, thus no action needs to be taken.

Note that there is an option to filter out the 'Closing socket' messages, as described below. But we advise against doing this since there is a small chance that the messages could be indicative of some sort of issue in your environment, therefore it is good to be aware of whether these messages are logged and the frequency at which they are logged. However, if still choose to filter out the messages, you can do so as follows:

  1. Log into WebLogic Admin console
  2. Click the 'Lock & Edit' button on left menu
  3. First, add the log filter:

    a. Click on your PeopleSoft Domain Name (on left menu in the 'Domain Structure' section) b. Go to 'Configuration' tab and 'Log Filters' subtab c. Click 'New' button to create a new filter d. Give any name to your new log file (eg "LogFilter-ClosingSocket' e. Click 'OK' f. Now click on the hyperlink for the newly created filter and in the 'Current Log Filter Expressions', click edit button to add the following: NOT(MESSAGE LIKE 'Closing socket as no data read from it%') g. Save the change h. Click 'Activate Changes' button on left menu

4. Now assign the filter to the server

a. On left menu, choose Environment->Servers
b. On right menu, click the hyperlink for server you wish to update (eg 'PIA')
c. Choose 'Logging' tab and 'General' subtab
d. Go to bottom of page and click 'Advanced' hyperlink
e. Click 'Lock & Edit button
f. In the 'Logging' section, add the new filter that you created (in step 3 above)
g. Also add the filter to the 'Standard out' section (so that message is not logged to PIA_weblogic.log nor the stdout/ntservice log) h. Save the change
i. Click 'Activate Changes' button on left menu

该消息是警告,通常对用户没有影响,因此无需采取任何措施。

请注意,有一个选项可以过滤掉“关闭套接字”消息,如下所述。但是我们建议不要这样做,因为这些消息很有可能表明您的环境中存在某种问题,因此最好了解这些消息是否已记录以及记录它们的频率。但是,如果仍然选择过滤掉消息,您可以这样做:

  1. 登录到 WebLogic 管理控制台
  2. 单击左侧菜单上的“锁定和编辑”按钮
  3. 首先,添加日志过滤器:

    一种。单击您的 PeopleSoft 域名(在“域结构”部分的左侧菜单中) b. 转到“配置”选项卡和“日志过滤器”子选项卡 c. 单击“新建”按钮以创建新过滤器 d。为您的新日志文件指定任何名称(例如“LogFilter-ClosingSocket” e. 单击“确定” f. 现在单击新创建的过滤器的超链接,然后在“当前日志过滤器表达式”中单击编辑按钮以添加以下内容: NOT(MESSAGE LIKE 'Closing socket as no data read from it%') g. 保存更改 h. 单击左侧菜单上的“激活更改”按钮

4.现在将过滤器分配给服务器

一种。在左侧菜单中,选择 Environment->Servers
b。在右侧菜单中,单击要更新的服务器的超链接(例如“PIA”)
c.选择“日志”选项卡和“常规”子选项卡
d。转到页面底部并单击“高级”超链接
e。单击“锁定和编辑”按钮
f。在“日志记录”部分,添加您创建的新过滤器(在上面的第 3 步中)
g. 还要将过滤器添加到“标准输出”部分(以便消息不会记录到 PIA_weblogic.log 或 stdout/ntservice 日志) h. 保存更改
i。单击左侧菜单上的“激活更改”按钮

回答by user3126748

BEA-000449

BEA-000449

Warning: Closing socket as no data read from it during the configured idle timeout of idleTimeout secs

警告:在 idleTimeout 秒的配置空闲超时期间,由于没有从中读取数据而关闭套接字

Description: Closing socket as no data read from it during the configured idle timeout of idleTimeout secs

描述:由于在配置的 idleTimeout 秒空闲超时期间没有从中读取数据而关闭套接字

Cause: The WebLogic Server or the network may be overloaded which is causing the socket to idle timeout.

原因:WebLogic Server 或网络可能过载,从而导致套接字空闲超时。

Action: Capacity tuning of the server is required.

操作:需要对服务器进行容量调整。

source: http://docs.oracle.com/cd/E12839_01/apirefs.1111/e14397/Socket.html

来源:http: //docs.oracle.com/cd/E12839_01/apirefs.1111/e14397/Socket.html

回答by Vineeth Bhaskaran

Action:Capacity tuning of the server is required.

操作:需要对服务器进行容量调整。

Please set the parameter -Dweblogic.client.socket.ConnectTimeout=XXX, in startupscript of the AdminServer, and all the managed servers under JAVA_OPTIONS and check whether it is showing the same behaviour or not, where "XXX" is the value in ms.

请在AdminServer的startupscript和JAVA_OPTIONS下的所有托管服务器中设置参数-Dweblogic.client.socket.ConnectTimeout=XXX,并检查是否显示相同的行为,其中“XXX”为以毫秒为单位的值。

-Dweblogic.client.socket.ConnectTimeout=500

Referred from : https://community.oracle.com/thread/695621

引用自:https: //community.oracle.com/thread/695621