Consolidate db connection logic

This commit is contained in:
MICHAEL JACKSON 2017-08-16 10:31:34 -07:00
parent 16cef63d2b
commit f542cdafcd
5 changed files with 17 additions and 42 deletions

View File

@ -2,25 +2,16 @@ const parseURL = require('url').parse
const invariant = require('invariant')
const gunzip = require('gunzip-maybe')
const ndjson = require('ndjson')
const redis = require('redis')
const startOfDay = require('date-fns/start_of_day')
const addDays = require('date-fns/add_days')
const PackageURL = require('./PackageURL')
const CloudflareAPI = require('./CloudflareAPI')
const cf = require('./CloudflareAPI')
const db = require('./RedisClient')
const {
createDayKey,
createHourKey
} = require('./StatsServer')
const RedisURL = process.env.OPENREDIS_URL
invariant(
RedisURL,
'Missing the $OPENREDIS_URL environment variable'
)
const db = redis.createClient(RedisURL)
/**
* Domains we want to analyze.
*/
@ -35,11 +26,11 @@ const DomainNames = [
const LogWindowSeconds = 30
function getZones(domain) {
return CloudflareAPI.getJSON(`/zones?name=${domain}`)
return cf.getJSON(`/zones?name=${domain}`)
}
function getLogs(zoneId, startTime, endTime) {
return CloudflareAPI.get(
return cf.get(
`/zones/${zoneId}/logs/requests?start=${startTime}&end=${endTime}`,
{ 'Accept-Encoding': 'gzip' }
).then(function (res) {

View File

@ -1,22 +1,13 @@
const redis = require('redis')
const addDays = require('date-fns/add_days')
const invariant = require('invariant')
const CloudflareAPI = require('./CloudflareAPI')
const cf = require('./CloudflareAPI')
const db = require('./RedisClient')
const {
createDayKey,
createHourKey,
createMinuteKey
} = require('./StatsServer')
const RedisURL = process.env.OPENREDIS_URL
invariant(
RedisURL,
'Missing the $OPENREDIS_URL environment variable'
)
const db = redis.createClient(RedisURL)
/**
* Domains we want to analyze.
*/
@ -26,11 +17,11 @@ const DomainNames = [
]
function getZones(domain) {
return CloudflareAPI.getJSON(`/zones?name=${domain}`)
return cf.getJSON(`/zones?name=${domain}`)
}
function getZoneAnalyticsDashboard(zoneId, since) {
return CloudflareAPI.getJSON(`/zones/${zoneId}/analytics/dashboard?since=${since}&continuous=true`)
return cf.getJSON(`/zones/${zoneId}/analytics/dashboard?since=${since}&continuous=true`)
}
const oneSecond = 1000

View File

@ -1,8 +1,4 @@
const redis = require('redis')
const RedisURL = process.env.OPENREDIS_URL || 'redis://localhost:6379'
const db = redis.createClient(RedisURL)
const db = require('./RedisClient')
function createKey(packageName) {
return 'packageInfo-' + packageName

7
server/RedisClient.js Normal file
View File

@ -0,0 +1,7 @@
const redis = require('redis')
const RedisURL = process.env.OPENREDIS_URL || process.env.REDIS_URL || 'redis://localhost:6379'
const client = redis.createClient(RedisURL)
module.exports = client

View File

@ -1,14 +1,4 @@
const redis = require('redis')
const invariant = require('invariant')
const RedisURL = process.env.OPENREDIS_URL
invariant(
RedisURL,
'Missing the $OPENREDIS_URL environment variable'
)
const db = redis.createClient(RedisURL)
const db = require('./RedisClient')
const sumValues = (array) =>
array.reduce((memo, n) => memo + (parseInt(n, 10) || 0), 0)