From fc568dc7a7302602e385dbdb37a7574b12b59f32 Mon Sep 17 00:00:00 2001 From: Merlin Webster Date: Sat, 21 Oct 2023 07:40:48 +0100 Subject: [PATCH 1/2] Add Orion profiler. Reach at /dev/orion --- lib/tetrex_web/router.ex | 3 +++ mix.exs | 1 + mix.lock | 4 ++++ 3 files changed, 8 insertions(+) diff --git a/lib/tetrex_web/router.ex b/lib/tetrex_web/router.ex index 517301c..d813e81 100644 --- a/lib/tetrex_web/router.ex +++ b/lib/tetrex_web/router.ex @@ -1,5 +1,6 @@ defmodule TetrexWeb.Router do use TetrexWeb, :router + import OrionWeb.Router pipeline :browser do plug :accepts, ["html"] @@ -47,6 +48,8 @@ defmodule TetrexWeb.Router do scope "/dev" do pipe_through :browser live_dashboard "/dashboard", metrics: TetrexWeb.Telemetry + + live_orion("/orion") end end end diff --git a/mix.exs b/mix.exs index c8b4556..6424e94 100644 --- a/mix.exs +++ b/mix.exs @@ -49,6 +49,7 @@ defmodule Tetrex.MixProject do {:versioce, "~> 2.0.0"}, {:credo, "~> 1.7"}, {:tailwind_formatter, "~> 0.3.6", only: [:dev, :test], runtime: false}, + {:orion, git: "git@github.com:LivewareProblems/Orion.git", ref: "b7f8277"}, {:patchwork, git: "https://github.com/mjftw/patchwork.git", ref: "3e25990"} ] end diff --git a/mix.lock b/mix.lock index 28af29c..48c6f18 100644 --- a/mix.lock +++ b/mix.lock @@ -5,13 +5,17 @@ "cowboy_telemetry": {:hex, :cowboy_telemetry, "0.4.0", "f239f68b588efa7707abce16a84d0d2acf3a0f50571f8bb7f56a15865aae820c", [:rebar3], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:telemetry, "~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "7d98bac1ee4565d31b62d59f8823dfd8356a169e7fcbb83831b8a5397404c9de"}, "cowlib": {:hex, :cowlib, "2.12.1", "a9fa9a625f1d2025fe6b462cb865881329b5caff8f1854d1cbc9f9533f00e1e1", [:make, :rebar3], [], "hexpm", "163b73f6367a7341b33c794c4e88e7dbfe6498ac42dcd69ef44c5bc5507c8db0"}, "credo": {:hex, :credo, "1.7.0", "6119bee47272e85995598ee04f2ebbed3e947678dee048d10b5feca139435f75", [:mix], [{:bunt, "~> 0.2.1", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "6839fcf63d1f0d1c0f450abc8564a57c43d644077ab96f2934563e68b8a769d7"}, + "dog_sketch": {:hex, :dog_sketch, "0.1.3", "b74fa9edaadd9f9e9d233d607b6e487862bd716b66468a67e293a886863837db", [:mix], [], "hexpm", "be6d172a3d3809a0acbc85421a5d25a794841560b6f930540c345342c591d0df"}, "esbuild": {:hex, :esbuild, "0.7.0", "ce3afb13cd2c5fd63e13c0e2d0e0831487a97a7696cfa563707342bb825d122a", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}], "hexpm", "4ae9f4f237c5ebcb001390b8ada65a12fb2bb04f3fe3d1f1692b7a06fbfe8752"}, + "ex2ms": {:hex, :ex2ms, "1.6.1", "66d472eb14da43087c156e0396bac3cc7176b4f24590a251db53f84e9a0f5f72", [:mix], [], "hexpm", "a7192899d84af03823a8ec2f306fa858cbcce2c2e7fd0f1c49e05168fb9c740e"}, "expo": {:hex, :expo, "0.4.1", "1c61d18a5df197dfda38861673d392e642649a9cef7694d2f97a587b2cfb319b", [:mix], [], "hexpm", "2ff7ba7a798c8c543c12550fa0e2cbc81b95d4974c65855d8d15ba7b37a1ce47"}, "file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"}, "floki": {:hex, :floki, "0.34.3", "5e2dcaec5d7c228ce5b1d3501502e308b2d79eb655e4191751a1fe491c37feac", [:mix], [], "hexpm", "9577440eea5b97924b4bf3c7ea55f7b8b6dce589f9b28b096cc294a8dc342341"}, "gettext": {:hex, :gettext, "0.22.2", "6bfca374de34ecc913a28ba391ca184d88d77810a3e427afa8454a71a51341ac", [:mix], [{:expo, "~> 0.4.0", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "8a2d389673aea82d7eae387e6a2ccc12660610080ae7beb19452cfdc1ec30f60"}, "jason": {:hex, :jason, "1.4.0", "e855647bc964a44e2f67df589ccf49105ae039d4179db7f6271dfd3843dc27e6", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "79a3791085b2a0f743ca04cec0f7be26443738779d09302e01318f97bdb82121"}, "mime": {:hex, :mime, "2.0.5", "dc34c8efd439abe6ae0343edbb8556f4d63f178594894720607772a041b04b02", [:mix], [], "hexpm", "da0d64a365c45bc9935cc5c8a7fc5e49a0e0f9932a761c55d6c52b142780a05c"}, + "orion": {:git, "git@github.com:LivewareProblems/Orion.git", "b7f82776aa595b9a05484e001d18162291e6e7bc", [ref: "b7f8277"]}, + "orion_collector": {:hex, :orion_collector, "1.2.0", "9041f55532faacadcc4d6259a1eac472fdd6d9ba533ccce9801d62dd72020332", [:mix], [{:dog_sketch, "~> 0.1.2", [hex: :dog_sketch, repo: "hexpm", optional: false]}, {:ex2ms, "~> 1.6", [hex: :ex2ms, repo: "hexpm", optional: false]}], "hexpm", "f6eb4687123c5845da2bb82002babdaf87ccb8ddb3762cde304aa09f24832422"}, "patchwork": {:git, "https://github.com/mjftw/patchwork.git", "3e259901d06166b6be080014f551326fb82c0ecb", [ref: "3e25990"]}, "phoenix": {:hex, :phoenix, "1.7.6", "61f0625af7c1d1923d582470446de29b008c0e07ae33d7a3859ede247ddaf59a", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 2.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:phoenix_template, "~> 1.0", [hex: :phoenix_template, repo: "hexpm", optional: false]}, {:phoenix_view, "~> 2.0", [hex: :phoenix_view, repo: "hexpm", optional: true]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 2.6", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:plug_crypto, "~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}, {:websock_adapter, "~> 0.5.3", [hex: :websock_adapter, repo: "hexpm", optional: false]}], "hexpm", "f6b4be7780402bb060cbc6e83f1b6d3f5673b674ba73cc4a7dd47db0322dfb88"}, "phoenix_html": {:hex, :phoenix_html, "3.3.1", "4788757e804a30baac6b3fc9695bf5562465dd3f1da8eb8460ad5b404d9a2178", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "bed1906edd4906a15fd7b412b85b05e521e1f67c9a85418c55999277e553d0d3"}, From 35a1c458ec3ca21d06561347544248e4826f65a2 Mon Sep 17 00:00:00 2001 From: Merlin Webster Date: Sat, 21 Oct 2023 07:56:41 +0100 Subject: [PATCH 2/2] Added Rexbug tracing --- mix.exs | 1 + mix.lock | 2 ++ 2 files changed, 3 insertions(+) diff --git a/mix.exs b/mix.exs index 6424e94..ed44c5b 100644 --- a/mix.exs +++ b/mix.exs @@ -50,6 +50,7 @@ defmodule Tetrex.MixProject do {:credo, "~> 1.7"}, {:tailwind_formatter, "~> 0.3.6", only: [:dev, :test], runtime: false}, {:orion, git: "git@github.com:LivewareProblems/Orion.git", ref: "b7f8277"}, + {:rexbug, ">= 2.0.0-rc1"}, {:patchwork, git: "https://github.com/mjftw/patchwork.git", ref: "3e25990"} ] end diff --git a/mix.lock b/mix.lock index 48c6f18..e7c062c 100644 --- a/mix.lock +++ b/mix.lock @@ -28,6 +28,8 @@ "plug_cowboy": {:hex, :plug_cowboy, "2.6.1", "9a3bbfceeb65eff5f39dab529e5cd79137ac36e913c02067dba3963a26efe9b2", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "de36e1a21f451a18b790f37765db198075c25875c64834bcc82d90b309eb6613"}, "plug_crypto": {:hex, :plug_crypto, "1.2.5", "918772575e48e81e455818229bf719d4ab4181fcbf7f85b68a35620f78d89ced", [:mix], [], "hexpm", "26549a1d6345e2172eb1c233866756ae44a9609bd33ee6f99147ab3fd87fd842"}, "ranch": {:hex, :ranch, "1.8.0", "8c7a100a139fd57f17327b6413e4167ac559fbc04ca7448e9be9057311597a1d", [:make, :rebar3], [], "hexpm", "49fbcfd3682fab1f5d109351b61257676da1a2fdbe295904176d5e521a2ddfe5"}, + "redbug": {:hex, :redbug, "2.0.9", "47a0802ea5ca5f2c54bd9b0be429ff3ac839e85a277e97105d7e6107174b25f3", [:rebar3], [], "hexpm", "048cecdd53183a57e0f8a3f81bed2ea4c3ad424d319eabd5ef158b9fc3ea2c69"}, + "rexbug": {:hex, :rexbug, "2.0.0-rc1", "0cf0dd3fea622364dfc2bfb7ef6f1d31af1c9c1f69e1db16ac21451b15200780", [:mix], [{:redbug, "~> 2.0", [hex: :redbug, repo: "hexpm", optional: false]}], "hexpm", "c54cd70b6a2835322d87c2b5d755f76b7d0529bec28b687fbe72b7fd083bc718"}, "tailwind": {:hex, :tailwind, "0.2.0", "95f9e4a32020c5bec480f1d6a43a49ac8030b13183127b577605f506d6e13a66", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}], "hexpm", "385e939fcd7fe4654be5130b187e358aaabade385513f9d200ffecdbb9552a9e"}, "tailwind_formatter": {:hex, :tailwind_formatter, "0.3.6", "f3b02687a79a99106f2cee604d36561091ab5b9c9d16a97ae5901d91b3357047", [:mix], [{:phoenix_live_view, ">= 0.17.6", [hex: :phoenix_live_view, repo: "hexpm", optional: true]}], "hexpm", "3a0d75dad1700f9fa9394185c4ce0eb0eff2b1a0eb9aef66b4b382eae657bded"}, "telemetry": {:hex, :telemetry, "1.2.1", "68fdfe8d8f05a8428483a97d7aab2f268aaff24b49e0f599faa091f1d4e7f61c", [:rebar3], [], "hexpm", "dad9ce9d8effc621708f99eac538ef1cbe05d6a874dd741de2e689c47feafed5"},