@@ -119,37 +119,46 @@ defmodule Plausible.Workers.TrafficChangeNotifier do
119119 end
120120
121121 defp get_traffic_spike_stats ( site ) do
122+ % { }
123+ |> put_sources ( site )
124+ |> put_pages ( site )
125+ end
126+
127+ @ base_query_params % {
128+ "metrics" => [ "visitors" ] ,
129+ "pagination" => % { "limit" => 3 } ,
130+ "date_range" => "realtime"
131+ }
132+
133+ defp put_sources ( stats , site ) do
122134 { :ok , query } =
123135 Query . build (
124136 site ,
125137 :internal ,
126- % {
127- "site_id" => "#{ site . id } " ,
128- "metrics" => [ "visitors" ] ,
129- "pagination" => % { "limit" => 3 } ,
130- "date_range" => "realtime"
131- } ,
138+ Map . merge ( @ base_query_params , % {
139+ "site_id" => site . domain ,
140+ "dimensions" => [ "visit:source" ] ,
141+ "filters" => [ [ "is_not" , "visit:source" , [ "Direct / None" ] ] ]
142+ } ) ,
132143 % { }
133144 )
134145
135- % { }
136- |> put_sources ( site , query )
137- |> put_pages ( site , query )
138- end
139-
140- defp put_sources ( stats , site , query ) do
141- query =
142- query
143- |> Query . set ( dimensions: [ "visit:source" ] )
144- |> Query . add_filter ( [ :is_not , "visit:source" , [ "Direct / None" ] ] )
145-
146146 % { results: sources } = Plausible.Stats . query ( site , query )
147147
148148 Map . put ( stats , :sources , sources )
149149 end
150150
151- defp put_pages ( stats , site , query ) do
152- query = Query . set ( query , dimensions: [ "event:page" ] )
151+ defp put_pages ( stats , site ) do
152+ { :ok , query } =
153+ Query . build (
154+ site ,
155+ :internal ,
156+ Map . merge ( @ base_query_params , % {
157+ "site_id" => site . domain ,
158+ "dimensions" => [ "event:page" ]
159+ } ) ,
160+ % { }
161+ )
153162
154163 % { results: pages } = Plausible.Stats . query ( site , query )
155164
0 commit comments