diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,9 @@
+propellor (4.7.3) unstable; urgency=medium
+
+  * Expand the Trace data type.
+
+ -- Joey Hess <id@joeyh.name>  Sat, 29 Jul 2017 17:26:32 -0400
+
 propellor (4.7.2) unstable; urgency=medium
 
   * Added PROPELLOR_TRACE environment variable, which can be set to 1 to
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+propellor (4.7.3) unstable; urgency=medium
+
+  * Expand the Trace data type.
+
+ -- Joey Hess <id@joeyh.name>  Sat, 29 Jul 2017 17:26:32 -0400
+
 propellor (4.7.2) unstable; urgency=medium
 
   * Added PROPELLOR_TRACE environment variable, which can be set to 1 to
diff --git a/propellor.cabal b/propellor.cabal
--- a/propellor.cabal
+++ b/propellor.cabal
@@ -1,5 +1,5 @@
 Name: propellor
-Version: 4.7.2
+Version: 4.7.3
 Cabal-Version: >= 1.20
 License: BSD2
 Maintainer: Joey Hess <id@joeyh.name>
diff --git a/src/Propellor/Message.hs b/src/Propellor/Message.hs
--- a/src/Propellor/Message.hs
+++ b/src/Propellor/Message.hs
@@ -42,7 +42,7 @@
 -- make propellor emit these to stdout, in addition to its other output.
 data Trace 
 	= ActionStart (Maybe HostName) Desc
-	| ActionEnd Result
+	| ActionEnd (Maybe HostName) Desc Result
 	deriving (Read, Show)
 
 -- | Given a line read from propellor, if it's a serialized Trace,
@@ -101,7 +101,7 @@
 
 	liftIO $ trace $ ActionStart mhn desc
 	r <- a
-	liftIO $ trace $ ActionEnd $ toResult r
+	liftIO $ trace $ ActionEnd mhn desc (toResult r)
 
 	liftIO $ outputConcurrent . concat =<< sequence
 		[ whenConsole $
