К основному контенту

Weblogic Diagnostic Framework Run Bash Script (reboot managed server) - (bad practices)

Вообщем переодически сервер дохнет по: The WebLogic Server encountered a critical failure java.lang.OutOfMemoryError: Metaspace Reason: There is a panic condition in the server. The server is configured to exit on panic И хотя это гавно пишет типа  Reason: There is a panic condition in the server. The server is configured to exit on panic чёт ни хуя он ни куда не exit.... Вообщем т.к разбираться с тем чем он жрётся нет ни времени ни желания (оно обязательно появится)... как вариант можно приделать костыль... костыль будет заключаться в ребуте сервера при возникновении этой ошибки. Что значит для этого надо... Желания и понимание что так жить нельзя, и вообще... Делаем новый модуль называем скажем:  Reboot-OOMMetaSpace Идём в в новый модуль делаем Policy: Называем его OOM-Metaspace и говорит что это Server log: Жмём next в Configuration Policy пишем: log.logMessage.contains('java.lang.OutOfMemoryError: Metaspace'...

Weblogic create Diagnostic Image (thread dump and more) Deadlock (WLDF)

Итак бля свершилось чудо надо накатать пост.
Есть у нас чудный сервер на котором переодически возникают deadlock и было бы прикольно автоматом сделать diagnostic image c threaddump и прочей хурмой.

Что для этого надо.

1. Идём в weblogic console
weblogic console -> Diagnoatics ->  Diagnostic Module -> New

Назовём его Module-WLDF

OK -> Activate Changes

2. Заходим в новосозданный модуль (Module-WLDF)
Targets -> Указываем в качестве таргета нужный server -> Activate Changes



Add Watcher (т.е настраиваем на какие события реагировать)


Заходим в новосозданный модуль (Module-WLDF)
Module-WLDF -> Watches and Notifications -> Watches -> New




Заполняем поля:
Watch Name: Deadlock
Watch Type: Server Log
Enable Watch ясен хер ставим галочку.



-> Next

Current Watch Rule:
((SEVERITY = 'Critical') OR (SEVERITY = 'Info')) AND ((MSGID = 'WL-000394') OR (MSGID = 'BEA-000394'))
(MESSAGE LIKE '%OutOfMemoryError%')

Для 12.2.1.3
https://docs.oracle.com/middleware/12213/wls/WLDFC/config_watches.htm#WLDFC199
log.messageId == 'BEA-000365' and log.logMessage.contains('RUNNING')



-> Next



Add Notification (добавляем некую реакцию "на что либо")

Заходим в новосозданный модуль (Module-WLDF)
Module-WLDF -> Watches and Notifications -> Notifications -> New



Добавляем тип Diagnostic Image


Назваем это дело например DiagnosticImageForDeadLock




Указываем директорию где хранить снимки и
The length of time, in minutes, during which no diagnostic images requests will be accepted; that is, the minimum amount of time between image capture requests.



Finish

Далее идём обратно в наш Watch

Diagnostics -> Diagnostic Modules -> Module-WLDF -> Watches and Notifications -> Watches -> Deadlock -> Notifications

И добавляем наш DiagnosticImageForDeadLock


Ждём вообщем deadlock=) и радуемся.

Хотя хули радоваться....=))


Пока писал нашёл хорошую статью
http://www.oraworld.co.uk/weblogic-diagnostics-framework-how-to-create-a-diagnostic-image-capture/
+ дока
https://docs.oracle.com/middleware/1212/core/ASADM/diagnostics.htm#ASADM11157

Комментарии

Популярные сообщения из этого блога

Oracle SOA email notification или какого х.. оно не работает.

От делать нех задокументируем.... Вообщем то всё рассписанно по ссылке: http://www.rubiconred.com/blog/email-notification-with-soa-suite-11g/ Ссылка походу сдохла!!! Придётся на всякий случай записать пока не забыл... Собственно основные настройки делаются на этой странице: Тут будет текст дабы не плодить картинок: MailAccessProtocol : POP3 RetryLimit : -1 MailDelFreq : 600 AutoDelete : not check Debug : not check CheckMailFreq : 30 ReceiveFolder: INBOX OutgoingMailServer :  mail4.ru OutgoingMailServerPort : 25 OutgoingMailServerSecurity : None OutgoingDefaultFromAddr :  pklmn@mail.ru OutgoingPassword: вроде ни чё не трогал... IncomingMailServer: mail3.ru IncomingMailServerPort: 110 IncomingMailServerSSL: not check IncomingMailIDs: pklmn@mail.ru IncomingUserIDs: pklmn IncomingUserPasswords: тут настраиваем пароль При настройке рекомендуется обращать внимания на всплывающие подсказки например: Sender Address должен выглядеть как E...

Weblogic Diagnostic Framework Run Bash Script (reboot managed server) - (bad practices)

Вообщем переодически сервер дохнет по: The WebLogic Server encountered a critical failure java.lang.OutOfMemoryError: Metaspace Reason: There is a panic condition in the server. The server is configured to exit on panic И хотя это гавно пишет типа  Reason: There is a panic condition in the server. The server is configured to exit on panic чёт ни хуя он ни куда не exit.... Вообщем т.к разбираться с тем чем он жрётся нет ни времени ни желания (оно обязательно появится)... как вариант можно приделать костыль... костыль будет заключаться в ребуте сервера при возникновении этой ошибки. Что значит для этого надо... Желания и понимание что так жить нельзя, и вообще... Делаем новый модуль называем скажем:  Reboot-OOMMetaSpace Идём в в новый модуль делаем Policy: Называем его OOM-Metaspace и говорит что это Server log: Жмём next в Configuration Policy пишем: log.logMessage.contains('java.lang.OutOfMemoryError: Metaspace'...

Weblogic Kerberos

Weblogic установлен на сервере budwf Домен контролер wcctst.wcc.local Клиентская винда XZ 1. Генерим keytab ktpass -princ HTTP/srv_budwf@WCC.LOCAL -mapuser srv_budwf -kvno 0 -crypto AES128-SHA1 -ptype KRB5_NT_PRINCIPAL -pass lalal_1 -out c:\temp\budwf.keytab Т.е в данном случае principal name в keytab полностью соответствует ожиданиям... C:\Users\Administrator>ktpass -princ HTTP/srv_budwf@WCC.LOCAL -mapuser srv_budwf -kv no 0 -crypto AES128-SHA1 -ptype KRB5_NT_PRINCIPAL -pass lalal_1 -out c:\temp\b udwf.keytab Targeting domain controller: wcctst.wcc.local Successfully mapped HTTP/budwf to srv_budwf. Password succesfully set! Key created. Output keytab to c:\temp\budwf.keytab: Keytab version: 0x502 keysize 55 HTTP/budwf@WCC.LOCAL ptype 1 (KRB5_NT_PRINCIPAL) vno 0 etype 0x11 (AE S128-SHA1) keylength 16 (0xbf005ae14d58153abe3eab57cf5a8260) C:\Users\Administrator>setspn -L srv_budwf Registered ServicePrincipalNames for CN=srv_budwf,CN=Users,DC=wcc,DC=local: ...