| | import { useStore } from '@nanostores/react'; |
| | import { $loggingOverrides, configureLogging } from 'app/logging/logger'; |
| | import { useAppSelector } from 'app/store/storeHooks'; |
| | import { useAssertSingleton } from 'common/hooks/useAssertSingleton'; |
| | import { |
| | selectSystemLogIsEnabled, |
| | selectSystemLogLevel, |
| | selectSystemLogNamespaces, |
| | } from 'features/system/store/systemSlice'; |
| | import { useLayoutEffect } from 'react'; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | export const useSyncLoggingConfig = () => { |
| | useAssertSingleton('useSyncLoggingConfig'); |
| |
|
| | const loggingOverrides = useStore($loggingOverrides); |
| |
|
| | const logLevel = useAppSelector(selectSystemLogLevel); |
| | const logNamespaces = useAppSelector(selectSystemLogNamespaces); |
| | const logIsEnabled = useAppSelector(selectSystemLogIsEnabled); |
| |
|
| | useLayoutEffect(() => { |
| | configureLogging( |
| | loggingOverrides?.logIsEnabled ?? logIsEnabled, |
| | loggingOverrides?.logLevel ?? logLevel, |
| | loggingOverrides?.logNamespaces ?? logNamespaces |
| | ); |
| | }, [ |
| | logIsEnabled, |
| | logLevel, |
| | logNamespaces, |
| | loggingOverrides?.logIsEnabled, |
| | loggingOverrides?.logLevel, |
| | loggingOverrides?.logNamespaces, |
| | ]); |
| | }; |
| |
|