-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup_couch.js
32 lines (30 loc) · 1.07 KB
/
setup_couch.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var nano = require('nano');
var fs = require('fs');
var ConfigLoader = require('./config_loader');
var configLoader = ConfigLoader(fs, JSON);
var config = configLoader.loadConfig();
var nanoDB = nano(config.couchDBURL).db;
var lookoutDBName = config.couchDBDatabase;
nanoDB.destroy(lookoutDBName, function(err, body) {
if(err) console.log(err);
nanoDB.create(lookoutDBName, function(err, body) {
var lookoutCouch = nanoDB.use(lookoutDBName);
var eventsDesignDoc = {
"_id": "_design/events",
"language": "javascript",
"views": {
"ips_by_app_sha": {
//TODO: Add a show to eliminate unnecessary JSON values
//TODO: Reduce to unique IPs or an IP count
"map": function(doc) {
emit(doc.appSha256, doc.ip);
}.toString()
}
}
}
lookoutCouch.insert(eventsDesignDoc, function(err, result) {
console.log(err);
console.log(result);
});
});
});