graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellNone
LanguageHaskell2010

Hasura.Logging

Synopsis

Documentation

newtype FormattedTime Source #

Constructors

FormattedTime 

Fields

class (Eq (EngineLogType impl), Hashable (EngineLogType impl)) => EnabledLogTypes impl where Source #

Typeclass representing any type which can be parsed into a list of enabled log types, and has a Set of default enabled log types, and can find out if a log type is enabled

data family EngineLogType impl Source #

A family of EngineLogType types

Instances

Instances details
Eq (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Show (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Generic (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Associated Types

type Rep (EngineLogType Hasura) :: Type -> Type #

Hashable (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

FromJSON (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Methods

parseJSON :: Value -> Parser (EngineLogType Hasura)

parseJSONList :: Value -> Parser [EngineLogType Hasura]

ToJSON (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

EnabledLogTypes impl => FromEnv (HashSet (EngineLogType impl)) Source # 
Instance details

Defined in Hasura.Server.Init.Env

Methods

fromEnv :: String -> Either String (HashSet (EngineLogType impl)) Source #

From (EngineLogType Hasura) Text Source # 
Instance details

Defined in Hasura.Logging

Methods

from :: EngineLogType Hasura -> Text

data EngineLogType Hasura Source # 
Instance details

Defined in Hasura.Logging

type Rep (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

type Rep (EngineLogType Hasura) = D1 ('MetaData "EngineLogType" "Hasura.Logging" "graphql-engine-1.0.0-inplace" 'False) (((C1 ('MetaCons "ELTHttpLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTWebsocketLog" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ELTWebhookLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTQueryLog" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ELTStartup" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTLivequeryPollerLog" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ELTActionHandler" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ELTDataConnectorLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTInternal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 InternalLogTypes))))))

data Hasura Source #

Instances

Instances details
EnabledLogTypes Hasura Source # 
Instance details

Defined in Hasura.Logging

ToEngineLog UnstructuredLog Hasura Source # 
Instance details

Defined in Hasura.Logging

ToEngineLog ImmortalThreadLog Hasura Source # 
Instance details

Defined in Control.Concurrent.Extended

ToEngineLog JwkRefreshLog Hasura Source # 
Instance details

Defined in Hasura.Server.Auth.JWT.Logging

ToEngineLog ScheduledTriggerInternalErr Hasura Source # 
Instance details

Defined in Hasura.Eventing.ScheduledTrigger.Types

ToEngineLog QueryLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Logging

ToEngineLog ActionHandlerLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Execute.Action.Types

ToEngineLog WebHookLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog MetadataLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog PGLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog StartupLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog MigrationResult Hasura Source # 
Instance details

Defined in Hasura.Server.Migrate

ToEngineLog WSLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Transport.WebSocket.Server

ToEngineLog PollDetails Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Execute.Subscription.Poll.Common

Eq (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Show (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Generic (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Associated Types

type Rep (EngineLogType Hasura) :: Type -> Type #

Hashable (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

FromJSON (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

Methods

parseJSON :: Value -> Parser (EngineLogType Hasura)

parseJSONList :: Value -> Parser [EngineLogType Hasura]

ToJSON (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

From (EngineLogType Hasura) Text Source # 
Instance details

Defined in Hasura.Logging

Methods

from :: EngineLogType Hasura -> Text

ToEngineLog (HTTPResp 'EventType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPResp 'ScheduledType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPErr 'EventType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPErr 'ScheduledType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (ResolvedSource b) Hasura Source # 
Instance details

Defined in Hasura.RQL.Types.Source

data EngineLogType Hasura Source # 
Instance details

Defined in Hasura.Logging

type Rep (EngineLogType Hasura) Source # 
Instance details

Defined in Hasura.Logging

type Rep (EngineLogType Hasura) = D1 ('MetaData "EngineLogType" "Hasura.Logging" "graphql-engine-1.0.0-inplace" 'False) (((C1 ('MetaCons "ELTHttpLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTWebsocketLog" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ELTWebhookLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTQueryLog" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ELTStartup" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTLivequeryPollerLog" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ELTActionHandler" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ELTDataConnectorLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ELTInternal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 InternalLogTypes))))))

data InternalLogTypes Source #

Constructors

ILTUnstructured

mostly for debug logs - see debugT, debugBS and debugLBS functions

ILTEventTrigger 
ILTScheduledTrigger 
ILTWsServer

internal logs for the websocket server

ILTPgClient 
ILTMetadata

log type for logging metadata related actions; currently used in logging inconsistent metadata

ILTJwkRefreshLog 
ILTTelemetry 
ILTSchemaSyncThread 
ILTSourceCatalogMigration 

Instances

Instances details
Eq InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

Show InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

Generic InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

Associated Types

type Rep InternalLogTypes :: Type -> Type #

Hashable InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

ToJSON InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

From InternalLogTypes Text Source # 
Instance details

Defined in Hasura.Logging

Methods

from :: InternalLogTypes -> Text

type Rep InternalLogTypes Source # 
Instance details

Defined in Hasura.Logging

type Rep InternalLogTypes = D1 ('MetaData "InternalLogTypes" "Hasura.Logging" "graphql-engine-1.0.0-inplace" 'False) (((C1 ('MetaCons "ILTUnstructured" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ILTEventTrigger" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ILTScheduledTrigger" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ILTWsServer" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ILTPgClient" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "ILTMetadata" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ILTJwkRefreshLog" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ILTTelemetry" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ILTSchemaSyncThread" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ILTSourceCatalogMigration" 'PrefixI 'False) (U1 :: Type -> Type)))))

data LogLevel Source #

Instances

Instances details
Eq LogLevel Source # 
Instance details

Defined in Hasura.Logging

Ord LogLevel Source # 
Instance details

Defined in Hasura.Logging

Show LogLevel Source # 
Instance details

Defined in Hasura.Logging

ToJSON LogLevel Source # 
Instance details

Defined in Hasura.Logging

Methods

toJSON :: LogLevel -> Value

toEncoding :: LogLevel -> Encoding

toJSONList :: [LogLevel] -> Value

toEncodingList :: [LogLevel] -> Encoding

FromEnv LogLevel Source # 
Instance details

Defined in Hasura.Server.Init.Env

data EngineLog impl Source #

Constructors

EngineLog 

Instances

Instances details
Eq (EngineLogType impl) => Eq (EngineLog impl) Source # 
Instance details

Defined in Hasura.Logging

Methods

(==) :: EngineLog impl -> EngineLog impl -> Bool #

(/=) :: EngineLog impl -> EngineLog impl -> Bool #

Show (EngineLogType impl) => Show (EngineLog impl) Source # 
Instance details

Defined in Hasura.Logging

Methods

showsPrec :: Int -> EngineLog impl -> ShowS #

show :: EngineLog impl -> String #

showList :: [EngineLog impl] -> ShowS #

ToJSON (EngineLogType impl) => ToJSON (EngineLog impl) Source # 
Instance details

Defined in Hasura.Logging

Methods

toJSON :: EngineLog impl -> Value

toEncoding :: EngineLog impl -> Encoding

toJSONList :: [EngineLog impl] -> Value

toEncodingList :: [EngineLog impl] -> Encoding

class EnabledLogTypes impl => ToEngineLog a impl where Source #

Typeclass representing any data type that can be converted to EngineLog for the purpose of logging

Methods

toEngineLog :: a -> (LogLevel, EngineLogType impl, Value) Source #

Instances

Instances details
ToEngineLog UnstructuredLog Hasura Source # 
Instance details

Defined in Hasura.Logging

ToEngineLog ImmortalThreadLog Hasura Source # 
Instance details

Defined in Control.Concurrent.Extended

ToEngineLog JwkRefreshLog Hasura Source # 
Instance details

Defined in Hasura.Server.Auth.JWT.Logging

ToEngineLog ScheduledTriggerInternalErr Hasura Source # 
Instance details

Defined in Hasura.Eventing.ScheduledTrigger.Types

ToEngineLog QueryLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Logging

ToEngineLog ActionHandlerLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Execute.Action.Types

ToEngineLog WebHookLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog MetadataLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog PGLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog StartupLog Hasura Source # 
Instance details

Defined in Hasura.Server.Logging

ToEngineLog MigrationResult Hasura Source # 
Instance details

Defined in Hasura.Server.Migrate

ToEngineLog WSLog Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Transport.WebSocket.Server

ToEngineLog PollDetails Hasura Source # 
Instance details

Defined in Hasura.GraphQL.Execute.Subscription.Poll.Common

ToEngineLog (HTTPResp 'EventType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPResp 'ScheduledType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPErr 'EventType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (HTTPErr 'ScheduledType) Hasura Source # 
Instance details

Defined in Hasura.Eventing.HTTP

ToEngineLog (ResolvedSource b) Hasura Source # 
Instance details

Defined in Hasura.RQL.Types.Source

data LoggerCtx impl Source #

Constructors

LoggerCtx 

Fields

data LoggerSettings Source #

Constructors

LoggerSettings 

Fields

Instances

Instances details
Eq LoggerSettings Source # 
Instance details

Defined in Hasura.Logging

Show LoggerSettings Source # 
Instance details

Defined in Hasura.Logging

mkLoggerCtx :: (MonadIO io, MonadBaseControl IO io) => LoggerSettings -> HashSet (EngineLogType impl) -> ManagedT io (LoggerCtx impl) Source #

newtype Logger impl Source #

Constructors

Logger 

Fields

mkLogger :: ToJSON (EngineLogType impl) => LoggerCtx impl -> Logger impl Source #