Skip to content

Commit 4b2a7fc

Browse files
authored
Separate visualize-logs exe (#2197)
<!-- Describe your change here --> --- <!-- Consider each and tick it off one way or the other --> * [x] CHANGELOG updated or not needed * [x] Documentation updated or not needed * [x] Haddocks updated or not needed * [x] No new TODOs introduced or explained herafter
2 parents b2daec6 + 484b7fc commit 4b2a7fc

File tree

7 files changed

+89
-25
lines changed

7 files changed

+89
-25
lines changed

hydra-node/hydra-node.cabal

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -248,25 +248,6 @@ executable hydra-node
248248

249249
ghc-options: -threaded -rtsopts -with-rtsopts=-N4
250250

251-
executable visualize-logs
252-
import: project-config
253-
hs-source-dirs: exe/visualize-logs
254-
main-is: Main.hs
255-
build-depends:
256-
, aeson
257-
, attoparsec
258-
, base
259-
, conduit
260-
, hydra-cardano-api
261-
, hydra-node
262-
, hydra-prelude
263-
, lens
264-
, lens-aeson
265-
, optparse-applicative
266-
, text
267-
268-
ghc-options: -threaded -rtsopts -with-rtsopts=-N4
269-
270251
benchmark tx-cost
271252
import: project-config
272253
hs-source-dirs: bench/tx-cost

nix/coding-standards.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ _: {
2626
hydra-test-utils
2727
hydra-tui
2828
hydraw
29+
visualize-logs
2930
];
3031
inherit (pkgs) weeder;
3132
haskellType = "haskell.nix";

nix/hydra/packages.nix

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,18 @@
102102
"hydra-chain-observer"
103103
paddedRevision;
104104

105+
visualize-logs =
106+
embedRevision
107+
nativePkgs.visualize-logs.components.exes.visualize-logs
108+
"visualize-logs"
109+
paddedRevision;
110+
111+
visualize-logs-static =
112+
embedRevision
113+
musl64Pkgs.visualize-logs.components.exes.visualize-logs
114+
"visualize-logs"
115+
paddedRevision;
116+
105117
hydra-cluster = pkgs.writers.writeBashBin "hydra-cluster" ''
106118
export PATH=$PATH:${hydra-node}/bin
107119
${nativePkgs.hydra-cluster.components.exes.hydra-cluster}/bin/hydra-cluster "$@"

nix/hydra/project.nix

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
hydra-chain-observer.writeHieFiles = true;
3939
hydra-cluster.writeHieFiles = true;
4040
hydra-node.writeHieFiles = true;
41+
visualize-logs.writeHieFiles = true;
4142
hydra-plutus.writeHieFiles = true;
4243
hydra-plutus-extras.writeHieFiles = true;
4344
hydra-prelude.writeHieFiles = true;
@@ -46,6 +47,7 @@
4647
hydra-tui.writeHieFiles = true;
4748
hydraw.writeHieFiles = true;
4849
hydra-node.dontStrip = false;
50+
visualize-logs.dontStrip = false;
4951
hydra-tui.dontStrip = false;
5052
hydraw.dontStrip = false;
5153
};
@@ -72,6 +74,7 @@
7274
hydra-node.ghcOptions = [ "-L${pkgs.lib.getLib pkgs.static-snappy}/lib" ];
7375
hydra-tui.ghcOptions = [ "-L${pkgs.lib.getLib pkgs.static-snappy}/lib" ];
7476
hydra-chain-observer.ghcOptions = [ "-L${pkgs.lib.getLib pkgs.static-snappy}/lib" ];
77+
visualize-logs.ghcOptions = [ "-L${pkgs.lib.getLib pkgs.static-snappy}/lib" ];
7578
hydraw.ghcOptions = [ "-L${pkgs.lib.getLib pkgs.static-snappy}/lib" ];
7679
};
7780
}

visualize-logs/Main.hs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
-- | Parse hydra-node logs format more easy on the eyes. Parser works with regular json logs as well as journalctl format.
2+
module Main where
3+
4+
import Hydra.Prelude
5+
import Options.Applicative (execParser)
6+
import VisualizeLogs
7+
8+
main :: IO ()
9+
main = do
10+
args <- execParser opts
11+
visualize $ paths args

hydra-node/exe/visualize-logs/Main.hs renamed to visualize-logs/src/VisualizeLogs.hs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{-# LANGUAGE OverloadedRecordDot #-}
22

33
-- | Parse hydra-node logs format more easy on the eyes. Parser works with regular json logs as well as journalctl format.
4-
module Main where
4+
module VisualizeLogs where
55

66
import Hydra.Cardano.Api (Tx)
77
import Hydra.Prelude hiding (encodeUtf8, takeWhile)
@@ -102,11 +102,6 @@ opts =
102102
<> header "Visualize hydra-node logs"
103103
)
104104

105-
main :: IO ()
106-
main = do
107-
args <- execParser opts
108-
visualize $ paths args
109-
110105
visualize :: [FilePath] -> IO ()
111106
visualize paths = do
112107
decodedLines <-

visualize-logs/visualize-logs.cabal

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
cabal-version: 3.0
2+
name: visualize-logs
3+
version: 0.22.4
4+
synopsis: Visualize Hydra node logs
5+
author: IOG
6+
copyright: 2022 IOG
7+
license: Apache-2.0
8+
9+
common project-config
10+
default-language: GHC2021
11+
default-extensions:
12+
DataKinds
13+
DefaultSignatures
14+
DeriveAnyClass
15+
DeriveDataTypeable
16+
DerivingStrategies
17+
DuplicateRecordFields
18+
FunctionalDependencies
19+
GADTs
20+
LambdaCase
21+
MultiWayIf
22+
NoImplicitPrelude
23+
OverloadedStrings
24+
PartialTypeSignatures
25+
PatternSynonyms
26+
TypeFamilies
27+
ViewPatterns
28+
29+
ghc-options:
30+
-Wall -Wcompat -Widentities -Wincomplete-record-updates
31+
-Wincomplete-uni-patterns -Wredundant-constraints -Wunused-packages
32+
-fprint-potential-instances -Wmissing-local-signatures
33+
34+
library
35+
import: project-config
36+
hs-source-dirs: src
37+
exposed-modules: VisualizeLogs
38+
build-depends:
39+
, aeson
40+
, attoparsec
41+
, base
42+
, conduit
43+
, hydra-cardano-api
44+
, hydra-node
45+
, hydra-prelude
46+
, lens
47+
, lens-aeson
48+
, optparse-applicative
49+
, text
50+
51+
ghc-options: -haddock
52+
53+
executable visualize-logs
54+
import: project-config
55+
main-is: Main.hs
56+
build-depends:
57+
, hydra-prelude
58+
, optparse-applicative
59+
, visualize-logs
60+
61+
ghc-options: -threaded -rtsopts -with-rtsopts=-N4

0 commit comments

Comments
 (0)