+ All Categories
Home > Technology > Monitoring with exometer at AdRoll

Monitoring with exometer at AdRoll

Date post: 10-May-2015
Category:
Upload: brian-troutwine
View: 1,023 times
Download: 2 times
Share this document with a friend
Description:
Presentation slides given at Erloung Bay Area, January 2014. The deck is a brief introduction to the Erlang library exometer and gives an overview of my work at AdRoll to increase monitoring and insight of the running real-time bidding system.
Popular Tags:
17
EXPERIENCE REPORT: MONITORING WITH EXOMETER AT ADROLL AN ONGOING LOVE STORY
Transcript
Page 1: Monitoring with exometer at AdRoll

E X P E R I E N C E R E P O R T: M O N I T O R I N G W I T H E X O M E T E R AT A D R O L L

A N O N G O I N G L O V E S T O R Y

Page 2: Monitoring with exometer at AdRoll

W H A T A R E W E L O O K I N G F O R ?

Page 3: Monitoring with exometer at AdRoll

•VM statistics

•Application-specific statistics

•Configurable reporting to multiple backends

•Very low impact in terms of CPU time, memory consumption and network bandwidth

Page 4: Monitoring with exometer at AdRoll

W H AT A R E W E T RY I N G

T O AV O I D ?

Page 5: Monitoring with exometer at AdRoll

• VM killers • Application performance regressions • Abnormal application behavior • Surprises

Page 6: Monitoring with exometer at AdRoll

How do you use exometer?

Page 7: Monitoring with exometer at AdRoll

I M P O R TA N T T E R M S

• METRIC: a measurement

• ENTRY: a receiver and aggregator of metrics

• REPORTER: an entity which samples entries on a regular interval and optionally ships these samples onto a third-system

• SUBSCRIPTION: the definition of the regular interval on which reporters sample entries

Page 8: Monitoring with exometer at AdRoll

C R E AT I N G E N T R I E S

exometer:new([rtb,bodhi,metrics_srv,packets_in], histogram,

[{time_span, timer:seconds(60)}]) !

exometer:new([erlang, system_info], {function, erlang, system_info, ['$dp'], value, [port_count, process_count, thread_pool_size]}])

Page 9: Monitoring with exometer at AdRoll

C R E AT I N G S U B S C R I P T I O N S

{ report, [{ subscribers, [ { exometer_report_statsd, [rtb, bodhi, metrics_srv, packets_in], max, 1000, true } , { exometer_report_statsd, [rtb, bodhi, metrics_srv, packets_in], median, 1000, true } , { exometer_report_statsd, [rtb, bodhi, metrics_srv, packets_in], mean, 1000, true } , { exometer_report_statsd, [erlang, system_info], port_count, 10000, true } …

Page 10: Monitoring with exometer at AdRoll

C R E AT I N G R E P O R T E R S

{ reporters, [{ exometer_report_statsd, [{hostname, "localhost"}, {port, 8125}, {type_map, [ { [rtb, bodhi, metrics_srv, packets_in, max], gauge } , { [rtb, bodhi, metrics_srv, packets_in, median], gauge } , { [rtb, bodhi, metrics_srv, packets_in, mean], gauge } , { [erlang, system_info, port_count], gauge } …

Page 11: Monitoring with exometer at AdRoll

O T H E R N I C E T H I N G S

• Very easy to add your own reporters and entries.

• Reporters and entries can be proprietary. Just have to be loaded at runtime.

• Authors are responsive to issues.

Page 12: Monitoring with exometer at AdRoll

W H Y N O T… … F O L S O M ?

… S TAT M A N ? … V M S TAT ?

Page 13: Monitoring with exometer at AdRoll

Things that don’t quite work.

Page 14: Monitoring with exometer at AdRoll

Q U E S T I O N S ?

<3

Page 15: Monitoring with exometer at AdRoll

C O N C E R N S ?

>:(

Page 16: Monitoring with exometer at AdRoll

@ b l t r o u t w i n eB R I A N @ T R O U T W I N E . U S

Cool, thanks!

Page 17: Monitoring with exometer at AdRoll

ps. Come see me talk at Erlang Factory SF Bay on this very subject!


Recommended