Remove Farmbot Logger colors
* Fixes espeak trying to speak ansi colors * allows espeak to be specified as the sole channelpull/974/head
parent
c09ed30677
commit
fa96e2c8fd
|
@ -84,20 +84,7 @@ defmodule FarmbotCore.Log do
|
|||
|
||||
defimpl String.Chars, for: Log do
|
||||
def to_string(log) do
|
||||
if log.meta[:color] && function_exported?(IO.ANSI, log.meta[:color], 0) do
|
||||
"#{apply(IO.ANSI, log.meta[:color], [])}#{log.message}#{color(:normal)}\n"
|
||||
else
|
||||
"#{color(log.level)}#{log.message}#{color(:normal)}\n"
|
||||
end
|
||||
IO.iodata_to_binary(log.message)
|
||||
end
|
||||
|
||||
defp color(:debug), do: IO.ANSI.light_blue()
|
||||
defp color(:info), do: IO.ANSI.cyan()
|
||||
defp color(:busy), do: IO.ANSI.blue()
|
||||
defp color(:success), do: IO.ANSI.green()
|
||||
defp color(:warn), do: IO.ANSI.yellow()
|
||||
defp color(:error), do: IO.ANSI.red()
|
||||
defp color(:normal), do: IO.ANSI.normal()
|
||||
defp color(_), do: IO.ANSI.normal()
|
||||
end
|
||||
end
|
||||
|
|
|
@ -110,14 +110,15 @@ defmodule FarmbotCore.Logger do
|
|||
end
|
||||
|
||||
defp elixir_log(%Log{} = log) do
|
||||
# TODO Connor - fix time
|
||||
logger_meta = [
|
||||
application: :farmbot,
|
||||
function: log.function,
|
||||
file: log.file,
|
||||
line: log.line,
|
||||
module: log.module,
|
||||
channels: log.meta[:channels] || log.meta["channels"]
|
||||
channels: log.meta[:channels] || log.meta["channels"],
|
||||
verbosity: log.verbosity
|
||||
# TODO Connor - fix time
|
||||
# time: time
|
||||
]
|
||||
|
||||
|
|
|
@ -26,11 +26,12 @@ defmodule LoggerBackendEspeak do
|
|||
|
||||
def handle_event({_level, _pid, {Logger, msg, _timestamp, meta}}, %{port: espeak} = state) do
|
||||
should_espeak? =
|
||||
Enum.find(meta[:channels] || [], fn
|
||||
:espeak -> true
|
||||
"espeak" -> true
|
||||
_ -> false
|
||||
end)
|
||||
meta[:channels] == :espeak ||
|
||||
Enum.find(meta[:channels] || [], fn
|
||||
:espeak -> true
|
||||
"espeak" -> true
|
||||
_ -> false
|
||||
end)
|
||||
|
||||
if should_espeak? do
|
||||
_ = Port.command(espeak, IO.iodata_to_binary(msg) <> "\n")
|
||||
|
|
Loading…
Reference in New Issue