MongoDB dla administratora                                    Łukasz Jagiełło – l.jagiello@gratka-technologie.plhttp://gee...
AgendaKto ja i co jaJak to się robi dzisiajJak to można zrobić jutroPomysły...
Kto ja i co ja ?Ukradzione z wyszukiwania w Grafika google.com
Jak to się robi dzisiaj
Jak to się robi dzisiajfilter f_kern   { facility(kern); };filter f_cron   { facility(cron); };destination d_kern      { f...
Jak to się robi dzisiaj
Jak to się robi dzisiajfilter f_kern   { facility(kern); };filter f_cron   { facility(cron); };destination d_collector { u...
Syslog-ng 3.4.0alpha1Moduły:File                 JSONMongoDB              StreamSQL                  CSVSocketNetworkConsole
afmongodbPrzykładowy log z HAProxy:2012­04­02T21:10:25+02:00 10.x.y.z haproxy[2913]: Connect   from 80.55.238.74:3935 to 1...
afmongodbdestination d_mongodb {        mongodb(          value­pairs(            scope("selected­macros" "nv­  pairs")   ...
afmongodblog {        #source(s_local);        source(s_network);        #destination(d_local);        rewrite(r_rewrite_s...
MongoDB„Capped collections are fixed sized collections that have a very high  performance auto-FIFO age-out feature (age o...
MongoDB> db.messages.find(){ "MESSAGE" : "67.162.55.226", "_id"  :  ObjectId("4f7a0072c90d34ea7d2495db" ) }{ "MESSAGE" : "...
MongoDBPuchnące mongo ?17772 root      15   0 1463m 474m 276m S  0.0  8.0   2011 147:00 ./mongod ­­fork ­­logpath /d0/db/m...
mojologyhttp://mojology.madhouse-project.org/
mojologyhttp://mojology.madhouse-project.org/
mojologyhttp://mojology.madhouse-project.org/
Pomysły – Top10 IPm=function () {    emit(this.MESSAGE, {count:1});}r=function (key, values) {    var total = 0;    for (v...
Pomysły – Top10 IP> db.messages.mapReduce(m, r, { out : "myoutput" } );   db.myoutput.find().sort({value:­1});{ "_id" : "1...
Pomysły cd.http://www.slideshare.net/octplane/mongofr-mongodb-as-a-log-collector
Pomysły cd.http://www.slideshare.net/octplane/mongofr-mongodb-as-a-log-collector
Pomysły cd.CAPTCHALokalizowanie błędówKontrolaLiczniki (youporn.com 8GB-15GB/godzinę)Itd.Do statystyk mamy ciekawsze narzę...
Mongo db dla administratora
Mongo db dla administratora
Upcoming SlideShare
Loading in …5
×

Mongo db dla administratora

729
-1

Published on

Jak połączyć mongoDB z syslog-ng i uzyskać wartość dodaną.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
729
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Mongo db dla administratora

  1. 1. MongoDB dla administratora Łukasz Jagiełło – l.jagiello@gratka-technologie.plhttp://geekandpoke.typepad.com/geekandpoke/2011/01/nosql.html
  2. 2. AgendaKto ja i co jaJak to się robi dzisiajJak to można zrobić jutroPomysły...
  3. 3. Kto ja i co ja ?Ukradzione z wyszukiwania w Grafika google.com
  4. 4. Jak to się robi dzisiaj
  5. 5. Jak to się robi dzisiajfilter f_kern   { facility(kern); };filter f_cron   { facility(cron); };destination d_kern      { file("/var/log/$YEAR$MONTH$DAY/kern"); };destination d_cron      { file("/var/log/$YEAR$MONTH$DAY/cron"); };log { source(src); filter(f_kern); destination(d_kern); };log { source(src); filter(f_cron); destination(d_cron); };
  6. 6. Jak to się robi dzisiaj
  7. 7. Jak to się robi dzisiajfilter f_kern   { facility(kern); };filter f_cron   { facility(cron); };destination d_collector { udp("10.X.Y.Z" port(514)); };log { source(src); destination(d_collector); };
  8. 8. Syslog-ng 3.4.0alpha1Moduły:File JSONMongoDB StreamSQL CSVSocketNetworkConsole
  9. 9. afmongodbPrzykładowy log z HAProxy:2012­04­02T21:10:25+02:00 10.x.y.z haproxy[2913]: Connect  from 80.55.238.74:3935 to 195.8.99.31:80 (dom.gratka.pl/ HTTP) HAProxy -> syslog-ng(local) -> syslog-ng(remote) -> mongodb
  10. 10. afmongodbdestination d_mongodb {        mongodb(          value­pairs(            scope("selected­macros" "nv­ pairs")            exclude("DATE")            exclude("HOST")            exclude("LEGACY_MSGHDR")[...]};
  11. 11. afmongodblog {        #source(s_local);        source(s_network);        #destination(d_local);        rewrite(r_rewrite_subst);        destination(d_mongodb);};
  12. 12. MongoDB„Capped collections are fixed sized collections that have a very high performance auto-FIFO age-out feature (age out is based on insertion order). They are a bit like the "RRD" concept if you are familiar with that.”„In addition, capped collections automatically, with high performance, maintain insertion order for the documents in the collection; this is very powerful for certain use cases such as logging.”> db.createCollection("mycoll", {capped:true, size:100000})> db.createCollection("messages", {capped: true, size:10000000,  autoIndexId:true})
  13. 13. MongoDB> db.messages.find(){ "MESSAGE" : "67.162.55.226", "_id"  :  ObjectId("4f7a0072c90d34ea7d2495db" ) }{ "MESSAGE" : "193.151.114.11",  "_id" :  ObjectId("4f7a0072c90d34ea7d2495dc" ) }{ "MESSAGE" : "89.167.68.120", "_id" 
  14. 14. MongoDBPuchnące mongo ?17772 root      15   0 1463m 474m 276m S  0.0  8.0  2011 147:00 ./mongod ­­fork ­­logpath /d0/db/mongod.logponad 5 miesięcy działaniaśrednio co 30min wszystkie dane są wymienione10mln rekordów w bazie – zawsze !4GB na dysku!! Wesje 2.x działają DUŻO lepiej niż wcześniejsze !!
  15. 15. mojologyhttp://mojology.madhouse-project.org/
  16. 16. mojologyhttp://mojology.madhouse-project.org/
  17. 17. mojologyhttp://mojology.madhouse-project.org/
  18. 18. Pomysły – Top10 IPm=function () { emit(this.MESSAGE, {count:1});}r=function (key, values) { var total = 0; for (var i = 0; i < values.length; i++) { total += values[i].count; } return {count:total};}db.messages.mapReduce(m, r, { out : "myoutput" } );  db.myoutput.find().sort({value:­1});
  19. 19. Pomysły – Top10 IP> db.messages.mapReduce(m, r, { out : "myoutput" } );  db.myoutput.find().sort({value:­1});{ "_id" : "195.8.99.115", "value" : { "count" : 20771 } }{ "_id" : "86.111.244.239", "value" : { "count" : 6816 } }{ "_id" : "94.75.116.206", "value" : { "count" : 6716 } }{ "_id" : "195.137.162.149", "value" : { "count" : 5638 } }{ "_id" : "178.63.0.2", "value" : { "count" : 4902 } }{ "_id" : "31.187.3.80", "value" : { "count" : 3573 } }{ "_id" : "176.9.73.105", "value" : { "count" : 2734 } }{ "_id" : "62.129.228.159", "value" : { "count" : 2092 } }{ "_id" : "209.123.8.176", "value" : { "count" : 2016 } }{ "_id" : "107.20.40.240", "value" : { "count" : 1927 } }
  20. 20. Pomysły cd.http://www.slideshare.net/octplane/mongofr-mongodb-as-a-log-collector
  21. 21. Pomysły cd.http://www.slideshare.net/octplane/mongofr-mongodb-as-a-log-collector
  22. 22. Pomysły cd.CAPTCHALokalizowanie błędówKontrolaLiczniki (youporn.com 8GB-15GB/godzinę)Itd.Do statystyk mamy ciekawsze narzędzia

×