{"id":22650556,"url":"https://github.com/bleacherreport/ecto_logger_json","last_synced_at":"2025-04-12T03:12:19.695Z","repository":{"id":57493385,"uuid":"68847239","full_name":"bleacherreport/ecto_logger_json","owner":"bleacherreport","description":"Log ecto data as JSON with slightly different fields","archived":false,"fork":false,"pushed_at":"2018-05-22T14:16:39.000Z","size":15,"stargazers_count":6,"open_issues_count":1,"forks_count":1,"subscribers_count":32,"default_branch":"master","last_synced_at":"2025-03-25T22:41:32.996Z","etag":null,"topics":["ecto","elixir","json","logger","logging"],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bleacherreport.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-09-21T18:42:17.000Z","updated_at":"2018-12-29T23:49:40.000Z","dependencies_parsed_at":"2022-08-28T15:13:06.634Z","dependency_job_id":null,"html_url":"https://github.com/bleacherreport/ecto_logger_json","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bleacherreport%2Fecto_logger_json","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bleacherreport%2Fecto_logger_json/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bleacherreport%2Fecto_logger_json/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bleacherreport%2Fecto_logger_json/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bleacherreport","download_url":"https://codeload.github.com/bleacherreport/ecto_logger_json/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248322609,"owners_count":21084336,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ecto","elixir","json","logger","logging"],"created_at":"2024-12-09T08:34:55.173Z","updated_at":"2025-04-12T03:12:19.669Z","avatar_url":"https://github.com/bleacherreport.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EctoLoggerJson\n[![Hex pm](http://img.shields.io/hexpm/v/ecto_logger_json.svg?style=flat)](https://hex.pm/packages/ecto_logger_json)\n[![Build Status](https://travis-ci.org/bleacherreport/ecto_logger_json.svg?branch=master)](https://travis-ci.org/bleacherreport/ecto_logger_json)\n[![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](https://github.com/bleacherreport/plug_logger_json/blob/master/LICENSE)\n\nLog ecto data as JSON with slightly different fields\n\n## Dependencies\n  * Poison\n  * Ecto\n\n## Installation\n\nIf [available in Hex](https://hex.pm/docs/publish), the package can be installed as:\n\n  1. Add `ecto_logger_json` to your list of dependencies in `mix.exs`:\n\n    ```elixir\n    def deps do\n      [{:ecto_logger_json, \"~\u003e 0.1.0\"}]\n    end\n    ```\n\n  2. Ensure `ecto_logger_json` is started before your application:\n\n    ```elixir\n    def application do\n      [applications: [:ecto_logger_json]]\n    end\n    ```\n\n  3. Configure ecto logging in `config/enviroment_name.exs`\n\n    ```elixir\n    config :my_app, MyApp.Repo,\n    adapter: Ecto.Adapters.Postgres,\n    ...\n    loggers: [{Ecto.LoggerJSON, :log, [:info]}]\n    ```\n\n### Additonal Setup depending on your use case\n*My recommendation would be to only log to a file and not console\notherwise stdout when you are in iex gets very noisy from all the db logs.*\n\n  * Configure the logger (console)\n    * Add to your `config/config.exs` or `config/env_name.exs`:\n\n            config :logger, :console,\n              format: \"$message\\n\",\n              level: :info,\n              metadata: [:request_id]\n\n  * Configure the logger (file)\n    * Add `{:logger_file_backend, \"~\u003e 0.0.7\"}` to your mix.exs\n    * Run `mix deps.get`\n    * Add to your `config/config.exs` or `config/env_name.exs`:\n\n            config :logger, format: \"$message\\n\", backends: [{LoggerFileBackend, :log_file}, :console]\n\n            config :logger, :log_file,\n              format: \"$message\\n\",\n              level: :info,\n              metadata: [:request_id],\n              path: \"log/my_pipeline.log\"\n\n## Contributing\nBefore submitting your pull request, please run:\n  * `mix credo --strict`\n  * `mix coveralls`\n  * `mix dialyzer`\n\nPlease squash your pull request's commits into a single commit with a message and\ndetailed description explaining the commit.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbleacherreport%2Fecto_logger_json","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbleacherreport%2Fecto_logger_json","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbleacherreport%2Fecto_logger_json/lists"}