Commit 7e88c47a authored by Luca Lusso's avatar Luca Lusso
Browse files

Issue #3223751 by lussoluca: Unable to decode output into JSON: Syntax error

parent 54b8e77c
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -92,6 +92,8 @@ services:
    class: Monolog\Formatter\ScalarFormatter
  monolog.formatter.wildfire:
    class: Monolog\Formatter\WildfireFormatter
  monolog.formatter.drush:
    class: Drupal\monolog\Logger\Formatter\DrushFormatter

  # Should not be needed.
  monolog.processor.psr_log_message:
+34 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\monolog\Logger\Formatter;

use Monolog\Formatter\LineFormatter;

/**
 * Formatter suitable to be using with Drush logs.
 */
class DrushFormatter extends LineFormatter {

    /**
     * {@inheritdoc}
     */
    protected function convertToString($data): string {
        if (null === $data || is_bool($data)) {
            return var_export($data, true);
        }

        if (is_scalar($data)) {
            return (string) $data;
        }

        $result = "";
        array_walk($data, function($val, $key) use(&$result) {
            if ($val != "") {
                $result .= " | $key=$val";
            }
        });

        return ltrim($result);
    }

}