Skip to content

Commit 176f538

Browse files
committed
wow
1 parent 98957ea commit 176f538

File tree

4 files changed

+56
-9
lines changed

4 files changed

+56
-9
lines changed

packages/libraries/core/src/client/agent.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ export function createAgent<TEvent>(
123123
? null
124124
: pluginOptions.circuitBreaker,
125125
};
126-
const logger = createHiveLogger(pluginOptions.logger ?? console, '[agent]', pluginOptions.debug);
126+
const logger = createHiveLogger(pluginOptions.logger ?? console, '[agent]');
127127

128128
let circuitBreaker: CircuitBreakerInterface<
129129
Parameters<typeof sendHTTPCall>,

packages/libraries/core/src/client/client.ts

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,61 @@ import { createPersistedDocuments } from './persisted-documents.js';
1010
import { createReporting } from './reporting.js';
1111
import type { HiveClient, HiveInternalPluginOptions, HivePluginOptions } from './types.js';
1212
import { createUsage } from './usage.js';
13-
import { createHiveLogger, isLegacyAccessToken } from './utils.js';
13+
import { createHiveLogger, HiveLogger, isLegacyAccessToken } from './utils.js';
1414

15-
export function createHive(options: HivePluginOptions): HiveClient {
16-
const logger = createHiveLogger(
15+
function chooseDefaultLogger(options: HivePluginOptions): HiveLogger {
16+
if (options.logger === 'debug') {
17+
return createHiveLogger(
18+
{
19+
debug(...args) {
20+
console.debug(...args);
21+
},
22+
info(...args) {
23+
console.info(...args);
24+
},
25+
error(...args) {
26+
console.error(...args);
27+
},
28+
},
29+
'[hive]',
30+
);
31+
}
32+
if (options.logger === 'info') {
33+
return createHiveLogger(
34+
{
35+
debug() {},
36+
info(...args) {
37+
console.info(...args);
38+
},
39+
error(...args) {
40+
console.error(...args);
41+
},
42+
},
43+
'[hive]',
44+
);
45+
}
46+
if (options.logger === 'error') {
47+
return createHiveLogger(
48+
{
49+
debug() {},
50+
info() {},
51+
error(...args) {
52+
console.error(...args);
53+
},
54+
},
55+
'[hive]',
56+
);
57+
}
58+
59+
return createHiveLogger(
1760
options?.logger ?? options?.agent?.logger ?? console,
1861
'[hive]',
1962
options.debug,
2063
);
64+
}
65+
66+
export function createHive(options: HivePluginOptions): HiveClient {
67+
const logger = chooseDefaultLogger(options);
2168
let enabled = options.enabled ?? true;
2269

2370
if (enabled === false && !options.experimental__persistedDocuments) {

packages/libraries/core/src/client/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,9 +217,9 @@ export type HivePluginOptions = OptionalWhenFalse<
217217
/**
218218
* Custom logger.
219219
*
220-
* Default: console based logger
220+
* Default: 'info'
221221
*/
222-
logger?: Logger;
222+
logger?: Logger | 'error' | 'info' | 'debug';
223223
/**
224224
* Access Token for usage reporting
225225
*/

packages/libraries/core/src/client/utils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -210,9 +210,6 @@ export function createHiveLogger(baseLogger: Logger, prefix: string, debug = tru
210210

211211
return {
212212
[hiveSymbol]: context,
213-
info: (message: string) => {
214-
logger.info(printPath(path) + message);
215-
},
216213
error: (error: any, ...data: any[]) => {
217214
if (error.stack) {
218215
const pth = printPath(path);
@@ -223,6 +220,9 @@ export function createHiveLogger(baseLogger: Logger, prefix: string, debug = tru
223220
logger.error(printPath(path) + String(error), ...data);
224221
}
225222
},
223+
info: (message: string) => {
224+
logger.info(printPath(path) + message);
225+
},
226226
debug: (message: string) => {
227227
if (!context.debug) {
228228
return;

0 commit comments

Comments
 (0)