-- | This module reexports everything you need to accompany an import for your choice of logging frontend
--
-- The frontend to this library is based on importing a specific logging frontend. Currently there are @Control.Effect.Unclog.{Json,Text}@
-- and @Unclog.IO.{Json,Text}@ for @aeson@ and @text@ based logging and use with @fused-effects@ and @MonadUnliftIO@ respectively,
-- exposing functions with the same names, @debug@, @info@, @warn@ and @fatal@ for the four common log levels.
--
-- Subscribers watch a channel of logs and are constructed and destructed by the toplevel logging handler, like @runUnclogging@ or
-- @withLoggingWithSubscribers@. To construct your own subscribers, check out the 'Unclog.Subscriber' module, more specifically, the
-- 'mkSubscriber', 'mkSubscriberSimple' and 'bracketSubscriber' functions.
module Unclog
  ( module Unclog.Frontend
  , module Unclog.Common
  , module Unclog.Render
  , module Unclog.Subscriber
  , module Reexports
  )
where

import System.IO as Reexports (stderr, stdout)
import Unclog.Common
import Unclog.Frontend
import Unclog.Render
import Unclog.Subscriber