From 21add4cc7c02feb22aaa0981ac5b4db77b38c5f1 Mon Sep 17 00:00:00 2001 From: bryan Date: Wed, 26 May 2021 21:06:07 -0700 Subject: [PATCH] updates, linting --- .../routes/action/create_action_route.ts | 13 ++--- .../osquery/server/routes/usage/index.ts | 2 +- .../osquery/server/routes/usage/recorder.ts | 58 +++++++++---------- .../plugins/osquery/server/usage/collector.ts | 2 + .../plugins/osquery/server/usage/fetchers.ts | 23 ++++---- 5 files changed, 50 insertions(+), 48 deletions(-) diff --git a/x-pack/plugins/osquery/server/routes/action/create_action_route.ts b/x-pack/plugins/osquery/server/routes/action/create_action_route.ts index 2c33f54711388c1..a44f7a803a94293 100644 --- a/x-pack/plugins/osquery/server/routes/action/create_action_route.ts +++ b/x-pack/plugins/osquery/server/routes/action/create_action_route.ts @@ -18,7 +18,7 @@ import { CreateActionRequestBodySchema, } from '../../../common/schemas/routes/action/create_action_request_body_schema'; -import {getUsageRecorder} from '../usage' +import { getUsageRecorder } from '../usage'; export const createActionRoute = (router: IRouter, osqueryContext: OsqueryAppContext) => { router.post( @@ -41,10 +41,10 @@ export const createActionRoute = (router: IRouter, osqueryContext: OsqueryAppCon osqueryContext, agentSelection ); - const usageRecorder = getUsageRecorder() - usageRecorder.incrementCallCount('live_query') + const usageRecorder = getUsageRecorder(); + usageRecorder.incrementCallCount('live_query'); if (!selectedAgents.length) { - usageRecorder.incrementErrorCount('live_query') + usageRecorder.incrementErrorCount('live_query'); return response.badRequest({ body: new Error('No agents found for selection') }); } @@ -73,12 +73,11 @@ export const createActionRoute = (router: IRouter, osqueryContext: OsqueryAppCon }, }); } catch (error) { - usageRecorder.incrementErrorCount('live_query') + usageRecorder.incrementErrorCount('live_query'); return response.customError({ statusCode: 500, - body: new Error(`Error occurred whlie processing ${error}`) , + body: new Error(`Error occurred whlie processing ${error}`), }); - } } ); diff --git a/x-pack/plugins/osquery/server/routes/usage/index.ts b/x-pack/plugins/osquery/server/routes/usage/index.ts index f242f9636feee0f..c96f94643ef7e8b 100644 --- a/x-pack/plugins/osquery/server/routes/usage/index.ts +++ b/x-pack/plugins/osquery/server/routes/usage/index.ts @@ -5,4 +5,4 @@ * 2.0. */ -export * from './recorder' \ No newline at end of file +export * from './recorder'; diff --git a/x-pack/plugins/osquery/server/routes/usage/recorder.ts b/x-pack/plugins/osquery/server/routes/usage/recorder.ts index 59a175cfecc5c71..02903041dc97e65 100644 --- a/x-pack/plugins/osquery/server/routes/usage/recorder.ts +++ b/x-pack/plugins/osquery/server/routes/usage/recorder.ts @@ -6,43 +6,43 @@ */ export interface RouteUsageMetric { - call_count: number; - error_count: number; + call_count: number; + error_count: number; } // TODO: use ES for this recording class UsageRecorder { - private counts = new Map() - public incrementCallCount(route: string, increment: number = 1) { - const count = this.counts.get(route) ?? 0 - this.counts.set(route, count + increment) - } - public getCallCount(route: string): number { - return this.counts.get(route) ?? 0; - } + private counts = new Map(); + public incrementCallCount(route: string, increment = 1) { + const count = this.counts.get(route) ?? 0; + this.counts.set(route, count + increment); + } + public getCallCount(route: string): number { + return this.counts.get(route) ?? 0; + } - private errors = new Map() - public incrementErrorCount(route: string, increment: number = 1) { - const count = this.errors.get(route) ?? 0 - this.errors.set(route, count + increment) - } - public getErrorCount(route: string): number { - return this.errors.get(route) ?? 0; - } + private errors = new Map(); + public incrementErrorCount(route: string, increment = 1) { + const count = this.errors.get(route) ?? 0; + this.errors.set(route, count + increment); + } + public getErrorCount(route: string): number { + return this.errors.get(route) ?? 0; + } - public getRouteMetric(route: string): RouteUsageMetric { - return { - call_count: this.getCallCount(route), - error_count: this.getErrorCount(route) - } - } + public getRouteMetric(route: string): RouteUsageMetric { + return { + call_count: this.getCallCount(route), + error_count: this.getErrorCount(route), + }; + } } let usageRecorder: UsageRecorder; export const getUsageRecorder = (): UsageRecorder => { - if (usageRecorder == null) { - usageRecorder = new UsageRecorder() - } - return usageRecorder -} \ No newline at end of file + if (usageRecorder == null) { + usageRecorder = new UsageRecorder(); + } + return usageRecorder; +}; diff --git a/x-pack/plugins/osquery/server/usage/collector.ts b/x-pack/plugins/osquery/server/usage/collector.ts index 82a2e4e88073323..f0599e7bfe6de68 100644 --- a/x-pack/plugins/osquery/server/usage/collector.ts +++ b/x-pack/plugins/osquery/server/usage/collector.ts @@ -21,10 +21,12 @@ export const registerCollector: RegisterCollector = ({ usageCollection }) => { if (!usageCollection) { return; } + // eslint-disable-next-line @typescript-eslint/no-explicit-any const collector = usageCollection.makeUsageCollector({ type: 'osquery', schema: usageSchema, isReady: () => true, + // eslint-disable-next-line @typescript-eslint/no-explicit-any fetch: async ({ esClient }: CollectorFetchContext): Promise => { return { beat_metrics: { diff --git a/x-pack/plugins/osquery/server/usage/fetchers.ts b/x-pack/plugins/osquery/server/usage/fetchers.ts index 31be97a769eebf0..a7edbc5619bf6bd 100644 --- a/x-pack/plugins/osquery/server/usage/fetchers.ts +++ b/x-pack/plugins/osquery/server/usage/fetchers.ts @@ -6,11 +6,11 @@ */ import { - SingleBucketAggregate, - TopHitsAggregate, - ValueAggregate, + SingleBucketAggregate, + TopHitsAggregate, + ValueAggregate, } from '@elastic/elasticsearch/api/types'; -import {getUsageRecorder} from '../routes/usage' +import { getUsageRecorder } from '../routes/usage'; import { ElasticsearchClient } from '../../../../../src/core/server'; import { METRICS_INDICES } from './constants'; @@ -27,8 +27,8 @@ export interface BeatMetricAggregation { // TODO: pipe this through ES export function getLiveQueryUsage() { - const usageRecorder = getUsageRecorder() - return usageRecorder.getRouteMetric('live_query') + const usageRecorder = getUsageRecorder(); + return usageRecorder.getRouteMetric('live_query'); } export async function getBeatUsage(esClient: ElasticsearchClient) { @@ -96,23 +96,24 @@ export async function getBeatUsage(esClient: ElasticsearchClient) { // XXX: discrimating the union types gets hairy when attempting to genericize, figure out a fix! if ('max_rss' in lastDayAggs) { - result.rss.max = (lastDayAggs.max_rss as ValueAggregate).value + result.rss.max = (lastDayAggs.max_rss as ValueAggregate).value; } if ('avg_rss' in lastDayAggs) { - result.rss.avg = (lastDayAggs.max_rss as ValueAggregate).value + result.rss.avg = (lastDayAggs.max_rss as ValueAggregate).value; } if ('max_cpu' in lastDayAggs) { - result.cpuMs.max = (lastDayAggs.max_cpu as ValueAggregate).value + result.cpuMs.max = (lastDayAggs.max_cpu as ValueAggregate).value; } if ('avg_cpu' in lastDayAggs) { - result.cpuMs.avg = (lastDayAggs.max_cpu as ValueAggregate).value + result.cpuMs.avg = (lastDayAggs.max_cpu as ValueAggregate).value; } if ('latest' in lastDayAggs) { - const latest = (lastDayAggs.latest as TopHitsAggregate).hits.hits[0]?._source?.monitoring.metrics.beat; + const latest = (lastDayAggs.latest as TopHitsAggregate).hits.hits[0]?._source?.monitoring + .metrics.beat; result.cpuMs.latest = latest.cpu.total.time.ms; result.rss.latest = latest.memstats.rss; }