@@ -29,7 +29,7 @@ import fr.acinq.eclair.channel._
2929import fr .acinq .eclair .db .DbEventHandler .ChannelEvent
3030import fr .acinq .eclair .payment .Monitoring .{Metrics => PaymentMetrics , Tags => PaymentTags }
3131import fr .acinq .eclair .payment ._
32- import fr .acinq .eclair .{Logs , NodeParams }
32+ import fr .acinq .eclair .{Logs , NodeParams , TimestampMilli }
3333
3434/**
3535 * This actor sits at the interface between our event stream and the database.
@@ -90,8 +90,8 @@ class DbEventHandler(nodeParams: NodeParams) extends Actor with DiagnosticActorL
9090 incoming.foreach(p => channelsDb.updateChannelMeta(p.channelId, ChannelEvent .EventType .PaymentReceived ))
9191 outgoing.foreach(p => channelsDb.updateChannelMeta(p.channelId, ChannelEvent .EventType .PaymentSent ))
9292 case ChannelPaymentRelayed (_, incoming, outgoing) =>
93- channelsDb.updateChannelMeta(incoming .channelId, ChannelEvent .EventType .PaymentReceived )
94- channelsDb.updateChannelMeta(outgoing .channelId, ChannelEvent .EventType .PaymentSent )
93+ incoming.foreach(i => channelsDb.updateChannelMeta(i .channelId, ChannelEvent .EventType .PaymentReceived ) )
94+ outgoing.foreach(o => channelsDb.updateChannelMeta(o .channelId, ChannelEvent .EventType .PaymentSent ) )
9595 case OnTheFlyFundingPaymentRelayed (_, incoming, outgoing) =>
9696 incoming.foreach(p => channelsDb.updateChannelMeta(p.channelId, ChannelEvent .EventType .PaymentReceived ))
9797 outgoing.foreach(p => channelsDb.updateChannelMeta(p.channelId, ChannelEvent .EventType .PaymentSent ))
@@ -124,7 +124,7 @@ class DbEventHandler(nodeParams: NodeParams) extends Actor with DiagnosticActorL
124124 case ChannelStateChanged (_, channelId, _, remoteNodeId, WAIT_FOR_CHANNEL_READY | WAIT_FOR_DUAL_FUNDING_READY , NORMAL , Some (commitments)) =>
125125 ChannelMetrics .ChannelLifecycleEvents .withTag(ChannelTags .Event , ChannelTags .Events .Created ).increment()
126126 val event = ChannelEvent .EventType .Created
127- auditDb.add(ChannelEvent (channelId, remoteNodeId, commitments.latest.fundingTxId, commitments.latest.capacity, commitments.localChannelParams.isChannelOpener, ! commitments.announceChannel, event))
127+ auditDb.add(ChannelEvent (channelId, remoteNodeId, commitments.latest.fundingTxId, commitments.latest.commitmentFormat.toString, commitments.latest. capacity, commitments.localChannelParams.isChannelOpener, ! commitments.announceChannel, event.label ))
128128 channelsDb.updateChannelMeta(channelId, event)
129129 case ChannelStateChanged (_, channelId, _, _, OFFLINE , SYNCING , _) =>
130130 channelsDb.updateChannelMeta(channelId, ChannelEvent .EventType .Connected )
@@ -141,7 +141,7 @@ class DbEventHandler(nodeParams: NodeParams) extends Actor with DiagnosticActorL
141141 case 0 => ChannelEvent .EventType .Confirmed
142142 case _ => ChannelEvent .EventType .Spliced
143143 }
144- auditDb.add(ChannelEvent (e.channelId, e.remoteNodeId, e.fundingTxId, e.commitments.latest.capacity, e.commitments.localChannelParams.isChannelOpener, ! e.commitments.announceChannel, event))
144+ auditDb.add(ChannelEvent (e.channelId, e.remoteNodeId, e.fundingTxId, e.commitments.latest.commitmentFormat.toString, e.commitments.latest. capacity, e.commitments.localChannelParams.isChannelOpener, ! e.commitments.announceChannel, event.label ))
145145
146146 case e : ChannelClosed =>
147147 ChannelMetrics .ChannelLifecycleEvents .withTag(ChannelTags .Event , ChannelTags .Events .Closed ).increment()
@@ -150,7 +150,7 @@ class DbEventHandler(nodeParams: NodeParams) extends Actor with DiagnosticActorL
150150 // spent by the closing transaction.
151151 val capacity = e.commitments.latest.capacity
152152 val fundingTxId = e.commitments.latest.fundingTxId
153- auditDb.add(ChannelEvent (e.channelId, e.commitments.remoteNodeId, fundingTxId, capacity, e.commitments.localChannelParams.isChannelOpener, ! e.commitments.announceChannel, event))
153+ auditDb.add(ChannelEvent (e.channelId, e.commitments.remoteNodeId, fundingTxId, e.commitments.latest.commitmentFormat.toString, capacity, e.commitments.localChannelParams.isChannelOpener, ! e.commitments.announceChannel, event.label ))
154154 channelsDb.updateChannelMeta(e.channelId, event)
155155
156156 case u : ChannelUpdateParametersChanged =>
@@ -178,7 +178,7 @@ object DbEventHandler {
178178 def props (nodeParams : NodeParams ): Props = Props (new DbEventHandler (nodeParams))
179179
180180 // @formatter:off
181- case class ChannelEvent (channelId : ByteVector32 , remoteNodeId : PublicKey , fundingTxId : TxId , capacity : Satoshi , isChannelOpener : Boolean , isPrivate : Boolean , event : ChannelEvent . EventType )
181+ case class ChannelEvent (channelId : ByteVector32 , remoteNodeId : PublicKey , fundingTxId : TxId , channelType : String , capacity : Satoshi , isChannelOpener : Boolean , isPrivate : Boolean , event : String , timestamp : TimestampMilli = TimestampMilli .now() )
182182 object ChannelEvent {
183183 sealed trait EventType { def label : String }
184184 object EventType {
@@ -190,12 +190,12 @@ object DbEventHandler {
190190 object PaymentReceived extends EventType { override def label : String = " received" }
191191 case class Closed (closingType : ClosingType ) extends EventType {
192192 override def label : String = closingType match {
193- case _ : MutualClose => " mutual"
194- case _ : LocalClose => " local"
195- case _ : CurrentRemoteClose => " remote"
196- case _ : NextRemoteClose => " remote"
197- case _ : RecoveryClose => " recovery"
198- case _ : RevokedClose => " revoked"
193+ case _ : MutualClose => " mutual-close "
194+ case _ : LocalClose => " local-close "
195+ case _ : CurrentRemoteClose => " remote-close "
196+ case _ : NextRemoteClose => " remote-close "
197+ case _ : RecoveryClose => " recovery-close "
198+ case _ : RevokedClose => " revoked-close "
199199 }
200200 }
201201 }
0 commit comments