-- SPDX-FileCopyrightText: 2022-23 Gregor Kleen <gregor.kleen@ifi.lmu.de>,Steffen Jost <s.jost@fraport.de>
--
-- SPDX-License-Identifier: AGPL-3.0-or-later

-- Table recording all significant changes of database-state for auditing purposes
TransactionLog
  time UTCTime
  instance InstanceId
  initiator UserId Maybe -- User associated with performing this action
  remote IP Maybe -- Remote party that triggered this action via HTTP
  info Value -- JSON-encoded `Transaction`
  deriving Eq Read Show Generic

InterfaceLog  
  interface Text
  subtype   Text
  write     Bool        -- requestMethod /= GET, i.e. True implies a write to FRADrive
  time      UTCTime
  rows      Int Maybe   -- number of datasets transmitted  
  info      Text        -- addtional status information  
  UniqueInterfaceSubtypeWrite interface subtype write
  deriving Eq Read Show Generic