nimbus (1.2.4) | 2018-01-25 20:02 |
nimbus-sample (1.2.4) | 2018-01-26 17:06 |
jp.ossc.nimbus.service.aop.interceptor.BeanFlowMetricsInterceptorServiceは、業務フローの処理メトリクスを取得するInterceptor実装サービスです。
取得した処理時間統計は、JMX経由で取得するか、出力/Categoryサービスで出力する事ができます。
このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。
下位サービスインタフェース | 用途 |
jp.ossc.nimbus.service.writer.Category | 処理時間統計を出力するサービス。 |
jp.ossc.nimbus.service.performance.PerformanceRecorder | 処理時間を記録するサービス。 |
以下に簡単なサービス定義を示します。
上記の定義の場合、取得した性能統計は、JMXで取得、及び、標準出力への出力を行えます。
- <?xml version="1.0" encoding="Shift_JIS"?>
- <!DOCTYPE server PUBLIC
- "-//Nimbus//DTD Nimbus 1.0//JA"
- "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
- <server>
- <manager>
- <!-- 業務フローの処理メトリクスを取得するInterceptorサービス -->
- <service name="BeanFlowMetricsInterceptor"
- code="jp.ossc.nimbus.service.aop.interceptor.BeanFlowMetricsInterceptorService"/>
- </manager>
- </server>
- <?xml version="1.0" encoding="Shift_JIS"?>
- <!DOCTYPE server PUBLIC
- "-//Nimbus//DTD Nimbus 1.0//JA"
- "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
- <server>
- <manager>
- <!-- 業務フローの処理メトリクスを取得するInterceptorサービス -->
- <service name="BeanFlowMetricsInterceptor"
- code="jp.ossc.nimbus.service.aop.interceptor.BeanFlowMetricsInterceptorService">
- <!-- 出力する間隔[ms]を設定する -->
- <attribute name="OutputInterval">10000</attribute>
- <!-- 出力先のCategoryサービスのサービス名を設定する -->
- <attribute name="CategoryServiceName">#Category</attribute>
- <depends>Category</depends>
- </service>
- <!-- 任意のオブジェクトをフォーマットして出力するCategoryサービス -->
- <service name="Category"
- code="jp.ossc.nimbus.service.writer.SimpleCategoryService">
- <attribute name="WritableRecordFactoryServiceName">#WritableRecordFactory</attribute>
- <attribute name="MessageWriterServiceName">#Writer</attribute>
- <depends>WritableRecordFactory</depends>
- <depends>Writer</depends>
- </service>
- <!-- 出力情報をフォーマットするWritableRecordFactoryサービス -->
- <service name="WritableRecordFactory"
- code="jp.ossc.nimbus.service.writer.WritableRecordFactoryService">
- <attribute name="Format">""%Order%","%Flow%","%Count%","%BestPerformance%","%WorstPerformance%","%AveragePerformance%""</attribute>
- </service>
- <!-- コンソールに出力するMessageWriterサービス -->
- <service name="Writer"
- code="jp.ossc.nimbus.service.writer.ConsoleWriterService"/>
- </manager>
- </server>