-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/54107/#review157635
-----------------------------------------------------------




src/main/java/org/apache/aurora/scheduler/storage/db/InstrumentingInterceptor.java
 (lines 90 - 94)
<https://reviews.apache.org/r/54107/#comment228252>

    Sorry, another nit, we can reduce GC overhead by not generating stat name 
with every interception simply by mapping from `Method` to `SlidingStats` here 
(see `TimedInterceptor`).


- Mehrdad Nurolahzade


On Nov. 30, 2016, 5:53 p.m., Reza Motamedi wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/54107/
> -----------------------------------------------------------
> 
> (Updated Nov. 30, 2016, 5:53 p.m.)
> 
> 
> Review request for Aurora, David McLaughlin, Joshua Cohen, Mehrdad 
> Nurolahzade, and Santhosh Kumar Shanmugham.
> 
> 
> Repository: aurora
> 
> 
> Description
> -------
> 
> MyBatis allows us to intercept calls within the execution of a mapped 
> statement. This allows us to time various mapped statements and ultimately 
> gain more insight on the performance of the database module.
> 
> This patch introduces an interceptor on MyBatis on `updates` and `query` 
> mapped statements. I used the following convention to create name for the 
> newly collected stats:
> mybatis.<<the id of the mapped statement>>
> 
> After interception the process is very similar to the one in 
> @Timed-interceptor. SlidingStats can be used to export interval averages, 
> total milliseconds and the event counts.
> 
> __example stats (from ./vars.json)__
> mybatis.create_tables_events 1
> mybatis.create_tables_events_per_sec 0.0
> mybatis.create_tables_nanos_per_event 0.0
> mybatis.create_tables_nanos_total 592633784
> mybatis.create_tables_nanos_total_per_sec 0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.selectAll_events
>  3
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.selectAll_events_per_sec
>  0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.selectAll_nanos_per_event
>  0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.selectAll_nanos_total
>  2858362
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.selectAll_nanos_total_per_sec
>  0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.select_events 
> 333
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.select_events_per_sec
>  0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.select_nanos_per_event
>  0.0
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.select_nanos_total
>  85745680
> mybatis.org.apache.aurora.scheduler.storage.db.AttributeMapper.select_nanos_total_per_sec
>  0.0
> 
> 
> Diffs
> -----
> 
>   src/main/java/org/apache/aurora/scheduler/storage/db/DbModule.java 
> e7287cec28e7b8ca978c506bfe821f261bc0ac26 
>   
> src/main/java/org/apache/aurora/scheduler/storage/db/InstrumentingInterceptor.java
>  PRE-CREATION 
>   
> src/test/java/org/apache/aurora/scheduler/storage/db/InstrumentingInterceptorTest.java
>  PRE-CREATION 
>   
> src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 
> 2e560c0d565689703b282391fe49dbf213ee25dc 
>   
> src/test/java/org/apache/aurora/scheduler/storage/mem/MemCronJobStoreTest.java
>  79999e19454568540c14f91808635bf8dff82bb3 
> 
> Diff: https://reviews.apache.org/r/54107/diff/
> 
> 
> Testing
> -------
> 
> Tests are covered in InstrumentingInterceptorTest.
> 
> - testStatIsCreatedOnce
> Tests that each stat is created one time only.
> 
> - testInterceptMarksMetrics
> Tests that invocation is correctly intercepted and then proceeds.
> 
> 
> Thanks,
> 
> Reza Motamedi
> 
>

Reply via email to