ExKafkaLogger
TODO: Add description
Installation
If available in Hex, the package can be installed
by adding ex_kafka_logger to your list of dependencies in mix.exs:
def deps do
[{:ex_kafka_logger, "~> 0.1.0"}]
endConfiguration in 3 steps
Step 1
Add the ExKafkaLogger Plug on your Phoenix endpoint.ex file just above plug YourApp.Router
It should looks like:
# ...
plug Plug.Session,
store: :cookie,
key: "_my_app_key",
signing_salt: "SECRET_SALT"
plug ExKafkaLogger.Plug
plug MyApp.Router
endStep 2
Create a handle_error function in the end of your router.ex file to catch the
errors without let Phoenix send the default errors response, like the example below.
defp handle_errors(conn, _) do
response = ExKafkaLogger.HttpError.template(conn.status)
json(conn, response)
endStep 3
Configure your application to make the Elixir Logger to use ExKafkaLogger as
one of your backend and let ExKafkaLogger knows how to connect in your Kafka
instance.
In your config/ENV.exs file add the lines like the example below.
config :ex_kafka_logger,
kafka_topic: "logging",
kafka_uris: [
{"127.0.0.1", 9092}
],
kafka_consumer_group: “your_consumer_group”,
service_name: “your_app_name”Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/ex_kafka_logger.