From 0c7ee6268a422637d40a24e1a6edfdd14b77945a Mon Sep 17 00:00:00 2001 From: itismadness Date: Sun, 31 Dec 2023 23:44:35 +0000 Subject: [PATCH] Add new argument to analyze to write out details json --- src/Command/AnalyzeCommand.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Command/AnalyzeCommand.php b/src/Command/AnalyzeCommand.php index 6c70ec2..a9604ca 100644 --- a/src/Command/AnalyzeCommand.php +++ b/src/Command/AnalyzeCommand.php @@ -22,7 +22,8 @@ class AnalyzeCommand extends Command ->addOption('html', null, InputOption::VALUE_NONE, 'Print the HTML version of log, without color') ->addOption('no_text', null, InputOption::VALUE_NONE, 'Do not print log text to console') ->addArgument('file', InputArgument::REQUIRED, 'Log file to analyze') - ->addArgument('out_file', InputArgument::OPTIONAL, 'Write HTML log to outfile'); + ->addArgument('out_file', InputArgument::OPTIONAL, 'Write HTML log to outfile') + ->addArgument('details', InputArgument::OPTIONAL, 'Write details to file'); } protected function execute(InputInterface $input, OutputInterface $output) @@ -37,6 +38,17 @@ class AnalyzeCommand extends Command $logchecker->newFile($filename); $logchecker->parse(); + if ($input->getArgument('details')) { + file_put_contents($input->getArgument('details'), json_encode([ + "ripper" => $logchecker->getRipper(), + "version" => $logchecker->getRipperVersion(), + "language" => $logchecker->getLanguage(), + "combined" => $logchecker->isCombinedLog(), + "score" => $logchecker->getScore(), + "checksum" => $logchecker->getChecksumState(), + "details" => $logchecker->getDetails(), + ], JSON_PRETTY_PRINT)); + } if ($input->getArgument('out_file')) { file_put_contents($input->getArgument('out_file'), $logchecker->getLog()); return 0;