Skip to content

Commit 1a983a5

Browse files
committed
emit telemetry on server reload
1 parent 7e0f737 commit 1a983a5

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

apps/language_server/lib/language_server/providers/execute_command/restart.ex

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,15 @@ defmodule ElixirLS.LanguageServer.Providers.ExecuteCommand.Restart do
88
{:ok, _pid} =
99
Task.start(fn ->
1010
Logger.info("ElixirLS restart requested")
11+
12+
JsonRpc.telemetry(
13+
"lsp_reload",
14+
%{
15+
"elixir_ls.lsp_reload_reason" => "client_request"
16+
},
17+
%{}
18+
)
19+
1120
Process.sleep(1000)
1221
ElixirLS.LanguageServer.restart()
1322
end)

apps/language_server/lib/language_server/server.ex

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1505,6 +1505,14 @@ defmodule ElixirLS.LanguageServer.Server do
15051505
"Environment variables change detected. ElixirLS will restart"
15061506
)
15071507

1508+
JsonRpc.telemetry(
1509+
"lsp_reload",
1510+
%{
1511+
"elixir_ls.lsp_reload_reason" => "env_variables_changed"
1512+
},
1513+
%{}
1514+
)
1515+
15081516
# sleep so the client has time to show the message
15091517
Process.sleep(5000)
15101518
ElixirLS.LanguageServer.restart()
@@ -1529,6 +1537,14 @@ defmodule ElixirLS.LanguageServer.Server do
15291537
else
15301538
JsonRpc.show_message(:warning, "Mix env change detected. ElixirLS will restart.")
15311539

1540+
JsonRpc.telemetry(
1541+
"lsp_reload",
1542+
%{
1543+
"elixir_ls.lsp_reload_reason" => "mix_env_changed"
1544+
},
1545+
%{}
1546+
)
1547+
15321548
# sleep so the client has time to show the message
15331549
Process.sleep(5000)
15341550
ElixirLS.LanguageServer.restart()
@@ -1551,6 +1567,14 @@ defmodule ElixirLS.LanguageServer.Server do
15511567
else
15521568
JsonRpc.show_message(:warning, "Mix target change detected. ElixirLS will restart")
15531569

1570+
JsonRpc.telemetry(
1571+
"lsp_reload",
1572+
%{
1573+
"elixir_ls.lsp_reload_reason" => "mix_target_changed"
1574+
},
1575+
%{}
1576+
)
1577+
15541578
# sleep so the client has time to show the message
15551579
Process.sleep(5000)
15561580
ElixirLS.LanguageServer.restart()
@@ -1587,6 +1611,14 @@ defmodule ElixirLS.LanguageServer.Server do
15871611
"Project directory change detected. ElixirLS will restart"
15881612
)
15891613

1614+
JsonRpc.telemetry(
1615+
"lsp_reload",
1616+
%{
1617+
"elixir_ls.lsp_reload_reason" => "project_dir_changed"
1618+
},
1619+
%{}
1620+
)
1621+
15901622
# sleep so the client has time to show the message
15911623
Process.sleep(5000)
15921624
ElixirLS.LanguageServer.restart()

0 commit comments

Comments
 (0)