Skip to content

Commit 7c7cc55

Browse files
authored
add setLogLevel function (livekit#521)
1 parent 28ac866 commit 7c7cc55

File tree

9 files changed

+29
-9
lines changed

9 files changed

+29
-9
lines changed

.changeset/chatty-jeans-call.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@livekit/components-core": patch
3+
---
4+
5+
add `setLogLevel` function

examples/nextjs/pages/minimal.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
import { setLogLevel } from '@livekit/components-core';
12
import { LiveKitRoom, useToken, VideoConference } from '@livekit/components-react';
23
import type { NextPage } from 'next';
34

45
const MinimalExample: NextPage = () => {
56
const params = typeof window !== 'undefined' ? new URLSearchParams(location.search) : null;
67
const roomName = params?.get('room') ?? 'test-room';
78
const userIdentity = params?.get('user') ?? 'test-identity';
9+
setLogLevel('info', { liveKitClientLogLevel: 'warn' });
810

911
const token = useToken(process.env.NEXT_PUBLIC_LK_TOKEN_ENDPOINT, roomName, {
1012
userInfo: {

packages/core/src/components/mediaDeviceSelect.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { LocalAudioTrack, LocalVideoTrack, Room } from 'livekit-client';
22
import { Track } from 'livekit-client';
33
import { BehaviorSubject, map, mergeWith } from 'rxjs';
4-
import log from '../logger';
4+
import { log } from '../logger';
55
import { observeParticipantMedia } from '../observables/participant';
66
import { prefixClass } from '../styles-interface';
77

packages/core/src/components/startAudio.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { Room } from 'livekit-client';
2-
import log from '../logger';
2+
import { log } from '../logger';
33
import { roomAudioPlaybackAllowedObservable } from '../observables/room';
44
import { prefixClass } from '../styles-interface';
55

packages/core/src/helper/grid-layouts.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import log from '../logger';
1+
import { log } from '../logger';
22

33
export type GridLayout = {
44
name: string;

packages/core/src/index.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,4 @@ export * from './observables/track';
2727
export * from './observables/dataChannel';
2828
export * from './observables/dom-event';
2929

30-
import logger from './logger';
31-
export const log = logger;
30+
export { log, setLogLevel } from './logger';

packages/core/src/logger.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
1+
import { setLogLevel as setClientSdkLogLevel } from 'livekit-client';
12
import loglevel from 'loglevel';
23

3-
const log = loglevel.getLogger('lk-components-js');
4+
export const log = loglevel.getLogger('lk-components-js');
45
log.setDefaultLevel('WARN');
56

6-
export default log;
7+
type LogLevel = Parameters<typeof setClientSdkLogLevel>[0];
8+
type SetLogLevelOptions = {
9+
liveKitClientLogLevel?: LogLevel;
10+
};
11+
12+
/**
13+
* Set the log level for both the `@livekit/components-react` package and the `@livekit-client` package.
14+
* To set the `@livekit-client` log independently, use the `liveKitClientLogLevel` prop on the `options` object.
15+
* @public
16+
*/
17+
export function setLogLevel(level: LogLevel, options: SetLogLevelOptions = {}): void {
18+
log.setLevel(level);
19+
setClientSdkLogLevel(options.liveKitClientLogLevel ?? level);
20+
}

packages/core/src/observables/track.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import type {
99
import { RoomEvent, TrackEvent } from 'livekit-client';
1010
import { map, Observable, startWith } from 'rxjs';
1111
import { allParticipantRoomEvents } from '../helper';
12-
import log from '../logger';
12+
import { log } from '../logger';
1313
import type { TrackReference } from '../track-reference';
1414
import { observeRoomEvents } from './room';
1515

packages/core/src/sorting/tile-array-update.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { differenceBy, chunk, zip } from '../helper/array-helper';
2-
import log from '../logger';
2+
import { log } from '../logger';
33
import type { TrackReferenceOrPlaceholder } from '../track-reference';
44
import { getTrackReferenceId } from '../track-reference';
55
import { flatTrackReferenceArray } from '../track-reference/test-utils';

0 commit comments

Comments
 (0)