LoggerMulticastBackend
======================
A backend for `Logger` that delivers messages over multicast UDP.
Designed for headless embedded applications, it allows watching the log over the local network.
## Easy Defaults
In your logger config, simply do something like this:
```elixir
config :logger,
backends: [ :console, LoggerMulticastBackend ],
level: :debug,
format: "$time $metadata[$level] $message\n"
```
or, at runtime, you can add this to your current config...
```elixir
Logger.add_backend LoggerMulticastBackend
```
Now, you'll have logging messages sent out on the default target multicast address, which is 224.0.0.224:9999.
## Custom Configuration
Don't like the default multicast target or format? change it by replacing `LoggerMulticastBackend` in the above examples with a tuple including options something like this:
```elixir
config :logger, backends: [
:console,
{LoggerMulticastBackend,
target: {{224,1,22,223}, 4252},
level: :info}
]
```
The full range of custom configuration options in the tuple are as follows:
- __target__ - a tuple of the target unicast or multicast address and port, like {{241,0,0,3}, 52209}
- __level__ - the level to be logged by this backend. Note that messages are first filtered by the general level configuration in :logger
- __format__ - the format message used to print logs.
Defaults to: ``"$time $metadata[$level] $levelpad$message\n"``
- __metadata__ - the metadata to be printed by $metadata.
Defaults to an empty list (no metadata)