Skip to content

Commit 9165615

Browse files
authored
Add feature tracking (#366)
1 parent 8d52633 commit 9165615

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

src/datasource.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import API from './api';
2020
import { detectFieldType } from './detectFieldType';
2121
import { parseValues } from './parseValues';
2222
import { JsonApiDataSourceOptions, JsonApiQuery, Pair } from './types';
23+
import { trackRequest } from 'tracking';
2324

2425
export class JsonDataSource extends DataSourceApi<JsonApiQuery, JsonApiDataSourceOptions> {
2526
api: API;
@@ -42,6 +43,8 @@ export class JsonDataSource extends DataSourceApi<JsonApiQuery, JsonApiDataSourc
4243
}
4344

4445
async query(request: DataQueryRequest<JsonApiQuery>): Promise<DataQueryResponse> {
46+
trackRequest(request);
47+
4548
const promises = await request.targets
4649
.filter((query) => !query.hide)
4750
.flatMap((query) => this.doRequest(query, request.range, request.scopedVars));

src/tracking.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { DataQueryRequest } from '@grafana/data';
2+
import { reportInteraction } from '@grafana/runtime';
3+
import { JsonApiQuery } from 'types';
4+
5+
export const trackRequest = (request: DataQueryRequest<JsonApiQuery>) => {
6+
request.targets.forEach((target) => {
7+
reportInteraction('grafana_json_query_executed', {
8+
app: request.app,
9+
cacheDurationSeconds: target.cacheDurationSeconds,
10+
method: target.method,
11+
});
12+
});
13+
};

0 commit comments

Comments
 (0)