Class: DangoMonitorClient
- Inherits:
-
DangoClientFramework
- Object
- DangoClientFramework
- DangoMonitorClient
- Defined in:
- lib/dango/monitor/dango_monitor_client.rb
Overview
モニター用のdangoクライアントクラス
Constant Summary collapse
- ConnTimeout =
6
Constants inherited from DangoClientFramework
DangoClientFramework::HeartBeatSendIntervalSec, DangoClientFramework::SendReceiveSleepIntervalSec
Constants included from DangoFrameworkModule
DangoFrameworkModule::CommMaxDigit, DangoFrameworkModule::DefaultEncodeType, DangoFrameworkModule::EncodeTypeJSON, DangoFrameworkModule::EncodeTypeMarshal, DangoFrameworkModule::EncodeTypeYAML, DangoFrameworkModule::MaxLenRecv, DangoFrameworkModule::MaxLenSend, DangoFrameworkModule::ReadTimeoutSec
Instance Attribute Summary collapse
-
#is_session_closed ⇒ Object
readonly
アクセサの定義 読み込みのみ.
Attributes inherited from DangoClientFramework
Instance Method Summary collapse
-
#dango_client_init ⇒ Object
起動処理.
-
#get_server_info ⇒ Object
サーバーの情報取得.
-
#get_server_info_common(monitor_action_name) ⇒ Object
情報取得系の処理を整理したもの.
-
#get_session_list ⇒ Object
session_listの情報取得.
-
#get_shared ⇒ Object
sharedの情報取得.
-
#get_socket_list ⇒ Object
socket_listの情報取得.
-
#initialize ⇒ DangoMonitorClient
constructor
A new instance of DangoMonitorClient.
-
#send_system_message(message = "") ⇒ Object
システムメッセージの送信.
-
#server_reload ⇒ Object
サーバーのデータリロード.
Methods inherited from DangoClientFramework
#dango_client_close, #dango_client_notice_shared, #dango_client_notice_shared_init, #dango_client_receive_decrypt, #dango_client_send_encrypt, #dango_heart_beat_thread_init, #dango_receive__heart_beat, #dango_receive__notice_sid, #dango_receive__notice_system_message, #dango_session_closed, #method_missing, #receive_decrypt, #send_action, #send_action_return_notice, #send_encrypt, #send_return_shared, #send_return_shared_init
Methods included from DangoFrameworkModule
#dango_receive_data, #dango_send_data, #debug_print, #error_print
Methods included from DangoLoggerModule
Methods included from ErrorMessage
Constructor Details
#initialize ⇒ DangoMonitorClient
Returns a new instance of DangoMonitorClient.
15 16 17 18 19 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 15 def initialize() @env = ENV['RAILS_ENV'] || 'development' config = YAML.load(open("#{RAILS_ROOT}/config/dango/#{@env}.yml", "rb"){|fh| fh.read}) super(@env, config) end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class DangoClientFramework
Instance Attribute Details
#is_session_closed ⇒ Object (readonly)
アクセサの定義 読み込みのみ
32 33 34 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 32 def is_session_closed @is_session_closed end |
Instance Method Details
#dango_client_init ⇒ Object
起動処理
24 25 26 27 28 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 24 def dango_client_init # ログ出力情報 @connection_client_log_file = "#{RAILS_ROOT}/log/dango_monitor_#{@env}.log" @connection_client_log_level = Logger::DEBUG end |
#get_server_info ⇒ Object
サーバーの情報取得
52 53 54 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 52 def get_server_info get_server_info_common("get_server_info") end |
#get_server_info_common(monitor_action_name) ⇒ Object
情報取得系の処理を整理したもの
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 35 def get_server_info_common(monitor_action_name) logger.debug "DangoMonitorClient:#{monitor_action_name}:#{ENV['RAILS_ROOT']}" begin ret_obj = send_action_return_notice("_monitor_#{monitor_action_name}", {}) logger.debug "get_server_info_common:ret_obj=#{ret_obj.inspect}" raise("code is not 0 (faild). :code=#{ret_obj['code']}") if ret_obj['code'] != 0 return(ret_obj[monitor_action_name]) rescue DangoFrameworkConnectionException raise("#{monitor_action_name} Connection error") rescue DangoFrameworkTimeoutException raise("#{monitor_action_name} Timeout error") ensure dango_client_close end end |
#get_session_list ⇒ Object
session_listの情報取得
62 63 64 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 62 def get_session_list get_server_info_common("get_session_list") end |
#get_shared ⇒ Object
sharedの情報取得
57 58 59 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 57 def get_shared get_server_info_common("get_shared") end |
#get_socket_list ⇒ Object
socket_listの情報取得
67 68 69 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 67 def get_socket_list get_server_info_common("get_socket_list") end |
#send_system_message(message = "") ⇒ Object
システムメッセージの送信
88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 88 def ( = "") logger.debug "DangoMonitorClient:send_system_message" begin ret_obj = send_action_return_notice('_monitor_send_system_message', {:message=>}) raise("code is not 0 (faild). :code=#{ret_obj['code']}") if ret_obj['code'] != 0 return(true) rescue DangoFrameworkConnectionException raise("monitor_send_system_message Connection error") rescue DangoFrameworkTimeoutException raise("monitor_send_system_message Timeout error") ensure dango_client_close end end |
#server_reload ⇒ Object
サーバーのデータリロード
72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/dango/monitor/dango_monitor_client.rb', line 72 def server_reload logger.debug "DangoMonitorClient:server_reload" begin ret_obj = send_action_return_notice('_monitor_server_reload', {}) raise("code is not 0 (faild). :code=#{ret_obj['code']}") if ret_obj['code'] != 0 return(true) rescue DangoFrameworkConnectionException raise("monitor_server_reload Connection error") rescue DangoFrameworkTimeoutException raise("monitor_server_reload Timeout error") ensure dango_client_close end end |