diff --git a/nixos/modules/tests/private-storage.nix b/nixos/modules/tests/private-storage.nix
index cb7203e0ec57f394fbdb63f1211420444ef7c220..f719d22aa971114caa019877453ce111ac7c718c 100644
--- a/nixos/modules/tests/private-storage.nix
+++ b/nixos/modules/tests/private-storage.nix
@@ -134,6 +134,15 @@ import <nixpkgs/nixos/tests/make-test.nix> {
       };
 
       # The client should be prepped now.  Make it try to use some storage.
-      $client->succeed('set -eo pipefail; ${exercise-storage} | systemd-cat');
-    '';
+      eval {
+        $client->succeed('set -eo pipefail; ${exercise-storage} /tmp/client | systemd-cat');
+        # nothing succeeds like ... 1.
+        1;
+      } or do {
+        my $error = $@ || 'Unknown failure';
+        my ($code, $log) = $client->execute('cat /tmp/stdout /tmp/stderr');
+        $client->log($log);
+        die $@;
+      };
+      '';
 }