chore: enhanced caching for user entity sets (resolve #264)

This commit is contained in:
Ferdinand Mütsch 2021-10-14 10:22:59 +02:00
parent 5fc87dd143
commit 7cae3c43d0
3 changed files with 453 additions and 434 deletions

View File

@ -1,22 +1,14 @@
mode: set
github.com/muety/wakapi/models/heartbeat.go:33.34,35.2 1 1
github.com/muety/wakapi/models/heartbeat.go:37.65,39.46 2 1
github.com/muety/wakapi/models/heartbeat.go:39.46,40.108 1 1
github.com/muety/wakapi/models/heartbeat.go:40.108,43.4 2 1
github.com/muety/wakapi/models/heartbeat.go:47.50,48.11 1 1
github.com/muety/wakapi/models/heartbeat.go:61.2,61.15 1 1
github.com/muety/wakapi/models/heartbeat.go:65.2,65.12 1 1
github.com/muety/wakapi/models/heartbeat.go:49.22,50.18 1 1
github.com/muety/wakapi/models/heartbeat.go:51.21,52.17 1 1
github.com/muety/wakapi/models/heartbeat.go:53.23,54.19 1 1
github.com/muety/wakapi/models/heartbeat.go:55.17,56.26 1 1
github.com/muety/wakapi/models/heartbeat.go:57.22,58.18 1 1
github.com/muety/wakapi/models/heartbeat.go:61.15,63.3 1 1
github.com/muety/wakapi/models/heartbeat.go:68.37,84.2 1 0
github.com/muety/wakapi/models/heartbeat.go:92.41,94.16 2 0
github.com/muety/wakapi/models/heartbeat.go:97.2,98.10 2 0
github.com/muety/wakapi/models/heartbeat.go:94.16,96.3 1 0
github.com/muety/wakapi/models/models.go:3.14,5.2 0 1
github.com/muety/wakapi/models/heartbeats.go:7.31,9.2 1 0
github.com/muety/wakapi/models/heartbeats.go:11.41,13.2 1 0
github.com/muety/wakapi/models/heartbeats.go:15.36,17.2 1 0
github.com/muety/wakapi/models/heartbeats.go:19.43,22.2 2 0
github.com/muety/wakapi/models/heartbeats.go:24.41,26.18 1 0
github.com/muety/wakapi/models/heartbeats.go:29.2,29.16 1 0
github.com/muety/wakapi/models/heartbeats.go:26.18,28.3 1 0
github.com/muety/wakapi/models/heartbeats.go:32.40,34.18 1 0
github.com/muety/wakapi/models/heartbeats.go:37.2,37.24 1 0
github.com/muety/wakapi/models/heartbeats.go:34.18,36.3 1 0
github.com/muety/wakapi/models/summary.go:74.29,76.2 1 1
github.com/muety/wakapi/models/summary.go:78.35,80.2 1 0
github.com/muety/wakapi/models/summary.go:82.37,90.2 7 1
@ -83,10 +75,6 @@ github.com/muety/wakapi/models/summary.go:287.50,291.2 1 1
github.com/muety/wakapi/models/summary.go:293.33,295.2 1 1
github.com/muety/wakapi/models/summary.go:297.43,299.2 1 1
github.com/muety/wakapi/models/summary.go:301.38,303.2 1 1
github.com/muety/wakapi/models/mail.go:19.44,23.2 3 0
github.com/muety/wakapi/models/mail.go:25.44,29.2 3 0
github.com/muety/wakapi/models/mail.go:31.32,44.2 1 0
github.com/muety/wakapi/models/mail.go:46.41,48.2 1 0
github.com/muety/wakapi/models/filters.go:17.56,18.16 1 0
github.com/muety/wakapi/models/filters.go:32.2,32.19 1 0
github.com/muety/wakapi/models/filters.go:19.22,20.32 1 0
@ -108,20 +96,27 @@ github.com/muety/wakapi/models/filters.go:44.8,44.28 1 1
github.com/muety/wakapi/models/filters.go:44.28,46.3 1 0
github.com/muety/wakapi/models/filters.go:46.8,46.26 1 1
github.com/muety/wakapi/models/filters.go:46.26,48.3 1 0
github.com/muety/wakapi/models/heartbeats.go:7.31,9.2 1 0
github.com/muety/wakapi/models/heartbeats.go:11.41,13.2 1 0
github.com/muety/wakapi/models/heartbeats.go:15.36,17.2 1 0
github.com/muety/wakapi/models/heartbeats.go:19.43,22.2 2 0
github.com/muety/wakapi/models/heartbeats.go:24.41,26.18 1 0
github.com/muety/wakapi/models/heartbeats.go:29.2,29.16 1 0
github.com/muety/wakapi/models/heartbeats.go:26.18,28.3 1 0
github.com/muety/wakapi/models/heartbeats.go:32.40,34.18 1 0
github.com/muety/wakapi/models/heartbeats.go:37.2,37.24 1 0
github.com/muety/wakapi/models/heartbeats.go:34.18,36.3 1 0
github.com/muety/wakapi/models/interval.go:39.47,40.23 1 0
github.com/muety/wakapi/models/interval.go:45.2,45.14 1 0
github.com/muety/wakapi/models/interval.go:40.23,41.13 1 0
github.com/muety/wakapi/models/interval.go:41.13,43.4 1 0
github.com/muety/wakapi/models/heartbeat.go:33.34,35.2 1 1
github.com/muety/wakapi/models/heartbeat.go:37.65,39.46 2 1
github.com/muety/wakapi/models/heartbeat.go:39.46,40.108 1 1
github.com/muety/wakapi/models/heartbeat.go:40.108,43.4 2 1
github.com/muety/wakapi/models/heartbeat.go:47.50,48.11 1 1
github.com/muety/wakapi/models/heartbeat.go:61.2,61.15 1 1
github.com/muety/wakapi/models/heartbeat.go:65.2,65.12 1 1
github.com/muety/wakapi/models/heartbeat.go:49.22,50.18 1 1
github.com/muety/wakapi/models/heartbeat.go:51.21,52.17 1 1
github.com/muety/wakapi/models/heartbeat.go:53.23,54.19 1 1
github.com/muety/wakapi/models/heartbeat.go:55.17,56.26 1 1
github.com/muety/wakapi/models/heartbeat.go:57.22,58.18 1 1
github.com/muety/wakapi/models/heartbeat.go:61.15,63.3 1 1
github.com/muety/wakapi/models/heartbeat.go:68.37,84.2 1 0
github.com/muety/wakapi/models/heartbeat.go:92.41,94.16 2 0
github.com/muety/wakapi/models/heartbeat.go:97.2,98.10 2 0
github.com/muety/wakapi/models/heartbeat.go:94.16,96.3 1 0
github.com/muety/wakapi/models/mail.go:19.44,23.2 3 0
github.com/muety/wakapi/models/mail.go:25.44,29.2 3 0
github.com/muety/wakapi/models/mail.go:31.32,44.2 1 0
github.com/muety/wakapi/models/mail.go:46.41,48.2 1 0
github.com/muety/wakapi/models/mail_address.go:15.13,18.2 2 1
github.com/muety/wakapi/models/mail_address.go:24.38,26.2 1 0
github.com/muety/wakapi/models/mail_address.go:28.35,30.21 2 1
@ -140,7 +135,20 @@ github.com/muety/wakapi/models/mail_address.go:59.40,60.22 1 1
github.com/muety/wakapi/models/mail_address.go:65.2,65.13 1 1
github.com/muety/wakapi/models/mail_address.go:60.22,61.17 1 1
github.com/muety/wakapi/models/mail_address.go:61.17,63.4 1 1
github.com/muety/wakapi/models/models.go:3.14,5.2 0 1
github.com/muety/wakapi/models/alias.go:12.32,14.2 1 0
github.com/muety/wakapi/models/alias.go:16.37,17.35 1 0
github.com/muety/wakapi/models/alias.go:22.2,22.14 1 0
github.com/muety/wakapi/models/alias.go:17.35,18.18 1 0
github.com/muety/wakapi/models/alias.go:18.18,20.4 1 0
github.com/muety/wakapi/models/language_mapping.go:11.42,13.2 1 0
github.com/muety/wakapi/models/language_mapping.go:15.51,17.2 1 0
github.com/muety/wakapi/models/language_mapping.go:19.52,21.2 1 0
github.com/muety/wakapi/models/project_label.go:11.39,13.2 1 0
github.com/muety/wakapi/models/interval.go:39.47,40.23 1 0
github.com/muety/wakapi/models/interval.go:45.2,45.14 1 0
github.com/muety/wakapi/models/interval.go:40.23,41.13 1 0
github.com/muety/wakapi/models/interval.go:41.13,43.4 1 0
github.com/muety/wakapi/models/shared.go:35.52,37.2 1 0
github.com/muety/wakapi/models/shared.go:39.52,42.16 3 0
github.com/muety/wakapi/models/shared.go:45.2,47.12 3 0
@ -171,14 +179,44 @@ github.com/muety/wakapi/models/user.go:116.45,118.2 1 0
github.com/muety/wakapi/models/user.go:120.45,122.2 1 0
github.com/muety/wakapi/models/user.go:124.39,126.2 1 0
github.com/muety/wakapi/models/user.go:128.39,131.2 2 0
github.com/muety/wakapi/models/alias.go:12.32,14.2 1 0
github.com/muety/wakapi/models/alias.go:16.37,17.35 1 0
github.com/muety/wakapi/models/alias.go:22.2,22.14 1 0
github.com/muety/wakapi/models/alias.go:17.35,18.18 1 0
github.com/muety/wakapi/models/alias.go:18.18,20.4 1 0
github.com/muety/wakapi/models/language_mapping.go:11.42,13.2 1 0
github.com/muety/wakapi/models/language_mapping.go:15.51,17.2 1 0
github.com/muety/wakapi/models/language_mapping.go:19.52,21.2 1 0
github.com/muety/wakapi/config/eventbus.go:26.13,28.2 1 1
github.com/muety/wakapi/config/eventbus.go:30.26,32.2 1 0
github.com/muety/wakapi/config/fs.go:9.56,10.19 1 0
github.com/muety/wakapi/config/fs.go:13.2,13.19 1 0
github.com/muety/wakapi/config/fs.go:10.19,12.3 1 0
github.com/muety/wakapi/config/sentry.go:22.35,24.2 1 0
github.com/muety/wakapi/config/sentry.go:26.62,29.2 2 0
github.com/muety/wakapi/config/sentry.go:39.33,46.2 2 0
github.com/muety/wakapi/config/sentry.go:48.79,51.2 2 0
github.com/muety/wakapi/config/sentry.go:53.72,57.2 3 0
github.com/muety/wakapi/config/sentry.go:59.71,63.2 3 0
github.com/muety/wakapi/config/sentry.go:65.71,69.2 3 0
github.com/muety/wakapi/config/sentry.go:71.72,75.2 3 0
github.com/muety/wakapi/config/sentry.go:77.72,81.2 3 0
github.com/muety/wakapi/config/sentry.go:83.67,88.18 4 0
github.com/muety/wakapi/config/sentry.go:100.2,100.28 1 0
github.com/muety/wakapi/config/sentry.go:88.18,89.65 1 0
github.com/muety/wakapi/config/sentry.go:89.65,92.42 3 0
github.com/muety/wakapi/config/sentry.go:95.4,96.10 2 0
github.com/muety/wakapi/config/sentry.go:92.42,94.5 1 0
github.com/muety/wakapi/config/sentry.go:110.50,114.91 1 0
github.com/muety/wakapi/config/sentry.go:114.91,115.29 1 0
github.com/muety/wakapi/config/sentry.go:119.4,122.38 3 0
github.com/muety/wakapi/config/sentry.go:127.4,127.39 1 0
github.com/muety/wakapi/config/sentry.go:130.4,130.69 1 0
github.com/muety/wakapi/config/sentry.go:115.29,117.5 1 0
github.com/muety/wakapi/config/sentry.go:122.38,123.38 1 0
github.com/muety/wakapi/config/sentry.go:123.38,125.6 1 0
github.com/muety/wakapi/config/sentry.go:127.39,129.5 1 0
github.com/muety/wakapi/config/sentry.go:132.79,133.27 1 0
github.com/muety/wakapi/config/sentry.go:140.4,140.16 1 0
github.com/muety/wakapi/config/sentry.go:133.27,134.84 1 0
github.com/muety/wakapi/config/sentry.go:134.84,135.42 1 0
github.com/muety/wakapi/config/sentry.go:135.42,137.7 1 0
github.com/muety/wakapi/config/sentry.go:142.17,144.3 1 0
github.com/muety/wakapi/config/sentry.go:147.49,151.51 2 0
github.com/muety/wakapi/config/sentry.go:154.2,154.12 1 0
github.com/muety/wakapi/config/sentry.go:151.51,153.3 1 0
github.com/muety/wakapi/config/utils.go:5.78,7.22 2 0
github.com/muety/wakapi/config/utils.go:13.2,13.11 1 0
github.com/muety/wakapi/config/utils.go:7.22,8.18 1 0
@ -275,85 +313,6 @@ github.com/muety/wakapi/config/db.go:68.56,70.16 2 1
github.com/muety/wakapi/config/db.go:74.2,81.3 1 1
github.com/muety/wakapi/config/db.go:70.16,72.3 1 0
github.com/muety/wakapi/config/db.go:84.54,86.2 1 1
github.com/muety/wakapi/config/eventbus.go:26.13,28.2 1 1
github.com/muety/wakapi/config/eventbus.go:30.26,32.2 1 0
github.com/muety/wakapi/config/fs.go:9.56,10.19 1 0
github.com/muety/wakapi/config/fs.go:13.2,13.19 1 0
github.com/muety/wakapi/config/fs.go:10.19,12.3 1 0
github.com/muety/wakapi/config/sentry.go:22.35,24.2 1 0
github.com/muety/wakapi/config/sentry.go:26.62,29.2 2 0
github.com/muety/wakapi/config/sentry.go:39.33,46.2 2 0
github.com/muety/wakapi/config/sentry.go:48.79,51.2 2 0
github.com/muety/wakapi/config/sentry.go:53.72,57.2 3 0
github.com/muety/wakapi/config/sentry.go:59.71,63.2 3 0
github.com/muety/wakapi/config/sentry.go:65.71,69.2 3 0
github.com/muety/wakapi/config/sentry.go:71.72,75.2 3 0
github.com/muety/wakapi/config/sentry.go:77.72,81.2 3 0
github.com/muety/wakapi/config/sentry.go:83.67,88.18 4 0
github.com/muety/wakapi/config/sentry.go:100.2,100.28 1 0
github.com/muety/wakapi/config/sentry.go:88.18,89.65 1 0
github.com/muety/wakapi/config/sentry.go:89.65,92.42 3 0
github.com/muety/wakapi/config/sentry.go:95.4,96.10 2 0
github.com/muety/wakapi/config/sentry.go:92.42,94.5 1 0
github.com/muety/wakapi/config/sentry.go:110.50,114.91 1 0
github.com/muety/wakapi/config/sentry.go:114.91,115.29 1 0
github.com/muety/wakapi/config/sentry.go:119.4,122.38 3 0
github.com/muety/wakapi/config/sentry.go:127.4,127.39 1 0
github.com/muety/wakapi/config/sentry.go:130.4,130.69 1 0
github.com/muety/wakapi/config/sentry.go:115.29,117.5 1 0
github.com/muety/wakapi/config/sentry.go:122.38,123.38 1 0
github.com/muety/wakapi/config/sentry.go:123.38,125.6 1 0
github.com/muety/wakapi/config/sentry.go:127.39,129.5 1 0
github.com/muety/wakapi/config/sentry.go:132.79,133.27 1 0
github.com/muety/wakapi/config/sentry.go:140.4,140.16 1 0
github.com/muety/wakapi/config/sentry.go:133.27,134.84 1 0
github.com/muety/wakapi/config/sentry.go:134.84,135.42 1 0
github.com/muety/wakapi/config/sentry.go:135.42,137.7 1 0
github.com/muety/wakapi/config/sentry.go:142.17,144.3 1 0
github.com/muety/wakapi/config/sentry.go:147.49,151.51 2 0
github.com/muety/wakapi/config/sentry.go:154.2,154.12 1 0
github.com/muety/wakapi/config/sentry.go:151.51,153.3 1 0
github.com/muety/wakapi/utils/color.go:8.90,10.32 2 0
github.com/muety/wakapi/utils/color.go:15.2,15.15 1 0
github.com/muety/wakapi/utils/color.go:10.32,11.50 1 0
github.com/muety/wakapi/utils/color.go:11.50,13.4 1 0
github.com/muety/wakapi/utils/strings.go:8.34,10.2 1 0
github.com/muety/wakapi/utils/strings.go:12.77,13.29 1 0
github.com/muety/wakapi/utils/strings.go:18.2,18.19 1 0
github.com/muety/wakapi/utils/strings.go:13.29,14.18 1 0
github.com/muety/wakapi/utils/strings.go:14.18,16.4 1 0
github.com/muety/wakapi/utils/auth.go:16.79,18.54 2 0
github.com/muety/wakapi/utils/auth.go:22.2,24.16 3 0
github.com/muety/wakapi/utils/auth.go:28.2,30.45 3 0
github.com/muety/wakapi/utils/auth.go:33.2,34.32 2 0
github.com/muety/wakapi/utils/auth.go:18.54,20.3 1 0
github.com/muety/wakapi/utils/auth.go:24.16,26.3 1 0
github.com/muety/wakapi/utils/auth.go:30.45,32.3 1 0
github.com/muety/wakapi/utils/auth.go:37.65,39.85 2 0
github.com/muety/wakapi/utils/auth.go:43.2,44.30 2 0
github.com/muety/wakapi/utils/auth.go:39.85,41.3 1 0
github.com/muety/wakapi/utils/auth.go:47.94,49.16 2 0
github.com/muety/wakapi/utils/auth.go:53.2,53.107 1 0
github.com/muety/wakapi/utils/auth.go:57.2,57.22 1 0
github.com/muety/wakapi/utils/auth.go:49.16,51.3 1 0
github.com/muety/wakapi/utils/auth.go:53.107,55.3 1 0
github.com/muety/wakapi/utils/auth.go:60.56,64.2 3 0
github.com/muety/wakapi/utils/auth.go:66.55,69.16 3 0
github.com/muety/wakapi/utils/auth.go:72.2,72.16 1 0
github.com/muety/wakapi/utils/auth.go:69.16,71.3 1 0
github.com/muety/wakapi/utils/common.go:18.73,19.58 1 0
github.com/muety/wakapi/utils/common.go:22.2,22.87 1 0
github.com/muety/wakapi/utils/common.go:25.2,25.64 1 0
github.com/muety/wakapi/utils/common.go:19.58,21.3 1 0
github.com/muety/wakapi/utils/common.go:22.87,24.3 1 0
github.com/muety/wakapi/utils/common.go:28.40,30.2 1 0
github.com/muety/wakapi/utils/common.go:32.44,34.2 1 0
github.com/muety/wakapi/utils/common.go:36.49,38.2 1 0
github.com/muety/wakapi/utils/common.go:40.45,42.2 1 0
github.com/muety/wakapi/utils/common.go:44.24,46.2 1 0
github.com/muety/wakapi/utils/common.go:48.56,51.45 3 1
github.com/muety/wakapi/utils/common.go:54.2,54.40 1 1
github.com/muety/wakapi/utils/common.go:51.45,53.3 1 1
github.com/muety/wakapi/utils/date.go:8.43,10.2 1 1
github.com/muety/wakapi/utils/date.go:12.48,14.2 1 0
github.com/muety/wakapi/utils/date.go:16.41,18.21 2 1
@ -394,14 +353,6 @@ github.com/muety/wakapi/utils/filesystem.go:21.15,23.47 2 0
github.com/muety/wakapi/utils/filesystem.go:23.47,25.23 2 0
github.com/muety/wakapi/utils/filesystem.go:29.4,29.19 1 0
github.com/muety/wakapi/utils/filesystem.go:25.23,27.5 1 0
github.com/muety/wakapi/utils/http.go:9.90,12.58 3 0
github.com/muety/wakapi/utils/http.go:12.58,14.3 1 0
github.com/muety/wakapi/utils/set.go:3.51,5.26 2 0
github.com/muety/wakapi/utils/set.go:8.2,8.12 1 0
github.com/muety/wakapi/utils/set.go:5.26,7.3 1 0
github.com/muety/wakapi/utils/set.go:11.49,13.21 2 0
github.com/muety/wakapi/utils/set.go:16.2,16.14 1 0
github.com/muety/wakapi/utils/set.go:13.21,15.3 1 0
github.com/muety/wakapi/utils/summary.go:10.66,11.40 1 0
github.com/muety/wakapi/utils/summary.go:16.2,16.48 1 0
github.com/muety/wakapi/utils/summary.go:11.40,12.27 1 0
@ -438,6 +389,32 @@ github.com/muety/wakapi/utils/summary.go:92.17,94.4 1 0
github.com/muety/wakapi/utils/summary.go:107.48,111.51 2 0
github.com/muety/wakapi/utils/summary.go:114.2,114.12 1 0
github.com/muety/wakapi/utils/summary.go:111.51,113.3 1 0
github.com/muety/wakapi/utils/common.go:18.73,19.58 1 0
github.com/muety/wakapi/utils/common.go:22.2,22.87 1 0
github.com/muety/wakapi/utils/common.go:25.2,25.64 1 0
github.com/muety/wakapi/utils/common.go:19.58,21.3 1 0
github.com/muety/wakapi/utils/common.go:22.87,24.3 1 0
github.com/muety/wakapi/utils/common.go:28.40,30.2 1 0
github.com/muety/wakapi/utils/common.go:32.44,34.2 1 0
github.com/muety/wakapi/utils/common.go:36.49,38.2 1 0
github.com/muety/wakapi/utils/common.go:40.45,42.2 1 0
github.com/muety/wakapi/utils/common.go:44.24,46.2 1 0
github.com/muety/wakapi/utils/common.go:48.56,51.45 3 1
github.com/muety/wakapi/utils/common.go:54.2,54.40 1 1
github.com/muety/wakapi/utils/common.go:51.45,53.3 1 1
github.com/muety/wakapi/utils/http.go:9.90,12.58 3 0
github.com/muety/wakapi/utils/http.go:12.58,14.3 1 0
github.com/muety/wakapi/utils/set.go:3.51,5.26 2 0
github.com/muety/wakapi/utils/set.go:8.2,8.12 1 0
github.com/muety/wakapi/utils/set.go:5.26,7.3 1 0
github.com/muety/wakapi/utils/set.go:11.49,13.21 2 0
github.com/muety/wakapi/utils/set.go:16.2,16.14 1 0
github.com/muety/wakapi/utils/set.go:13.21,15.3 1 0
github.com/muety/wakapi/utils/strings.go:8.34,10.2 1 0
github.com/muety/wakapi/utils/strings.go:12.77,13.29 1 0
github.com/muety/wakapi/utils/strings.go:18.2,18.19 1 0
github.com/muety/wakapi/utils/strings.go:13.29,14.18 1 0
github.com/muety/wakapi/utils/strings.go:14.18,16.4 1 0
github.com/muety/wakapi/utils/template.go:13.41,15.16 2 0
github.com/muety/wakapi/utils/template.go:18.2,18.23 1 0
github.com/muety/wakapi/utils/template.go:15.16,17.3 1 0
@ -457,51 +434,32 @@ github.com/muety/wakapi/utils/template.go:39.51,40.12 1 0
github.com/muety/wakapi/utils/template.go:44.17,46.4 1 0
github.com/muety/wakapi/utils/template.go:48.17,50.4 1 0
github.com/muety/wakapi/utils/template.go:55.17,57.4 1 0
github.com/muety/wakapi/utils/auth.go:16.79,18.54 2 0
github.com/muety/wakapi/utils/auth.go:22.2,24.16 3 0
github.com/muety/wakapi/utils/auth.go:28.2,30.45 3 0
github.com/muety/wakapi/utils/auth.go:33.2,34.32 2 0
github.com/muety/wakapi/utils/auth.go:18.54,20.3 1 0
github.com/muety/wakapi/utils/auth.go:24.16,26.3 1 0
github.com/muety/wakapi/utils/auth.go:30.45,32.3 1 0
github.com/muety/wakapi/utils/auth.go:37.65,39.85 2 0
github.com/muety/wakapi/utils/auth.go:43.2,44.30 2 0
github.com/muety/wakapi/utils/auth.go:39.85,41.3 1 0
github.com/muety/wakapi/utils/auth.go:47.94,49.16 2 0
github.com/muety/wakapi/utils/auth.go:53.2,53.107 1 0
github.com/muety/wakapi/utils/auth.go:57.2,57.22 1 0
github.com/muety/wakapi/utils/auth.go:49.16,51.3 1 0
github.com/muety/wakapi/utils/auth.go:53.107,55.3 1 0
github.com/muety/wakapi/utils/auth.go:60.56,64.2 3 0
github.com/muety/wakapi/utils/auth.go:66.55,69.16 3 0
github.com/muety/wakapi/utils/auth.go:72.2,72.16 1 0
github.com/muety/wakapi/utils/auth.go:69.16,71.3 1 0
github.com/muety/wakapi/utils/collection.go:3.59,5.22 2 0
github.com/muety/wakapi/utils/collection.go:8.2,8.15 1 0
github.com/muety/wakapi/utils/collection.go:5.22,7.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:30.91,36.2 1 1
github.com/muety/wakapi/middlewares/authenticate.go:38.90,41.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:43.90,46.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:48.71,49.71 1 0
github.com/muety/wakapi/middlewares/authenticate.go:49.71,51.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:54.107,58.16 3 0
github.com/muety/wakapi/middlewares/authenticate.go:61.2,61.16 1 0
github.com/muety/wakapi/middlewares/authenticate.go:65.2,65.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:81.2,82.12 2 0
github.com/muety/wakapi/middlewares/authenticate.go:58.16,60.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:61.16,63.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:65.31,66.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:71.3,71.29 1 0
github.com/muety/wakapi/middlewares/authenticate.go:78.3,78.9 1 0
github.com/muety/wakapi/middlewares/authenticate.go:66.31,69.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:71.29,74.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:74.9,77.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:85.70,86.39 1 0
github.com/muety/wakapi/middlewares/authenticate.go:91.2,91.14 1 0
github.com/muety/wakapi/middlewares/authenticate.go:86.39,87.60 1 0
github.com/muety/wakapi/middlewares/authenticate.go:87.60,89.4 1 0
github.com/muety/wakapi/middlewares/authenticate.go:94.98,96.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:100.2,103.16 4 1
github.com/muety/wakapi/middlewares/authenticate.go:106.2,106.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:96.16,98.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:103.16,105.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:109.97,113.19 4 1
github.com/muety/wakapi/middlewares/authenticate.go:116.2,117.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:120.2,120.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:113.19,115.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:117.16,119.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:123.92,125.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:129.2,130.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:137.2,137.18 1 0
github.com/muety/wakapi/middlewares/authenticate.go:125.16,127.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:130.16,132.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:13.83,14.43 1 0
github.com/muety/wakapi/middlewares/filetype.go:14.43,19.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:22.84,24.34 2 0
github.com/muety/wakapi/middlewares/filetype.go:31.2,31.27 1 0
github.com/muety/wakapi/middlewares/filetype.go:24.34,25.50 1 0
github.com/muety/wakapi/middlewares/filetype.go:25.50,29.4 3 0
github.com/muety/wakapi/utils/color.go:8.90,10.32 2 0
github.com/muety/wakapi/utils/color.go:15.2,15.15 1 0
github.com/muety/wakapi/utils/color.go:10.32,11.50 1 0
github.com/muety/wakapi/utils/color.go:11.50,13.4 1 0
github.com/muety/wakapi/middlewares/logging.go:20.102,21.43 1 0
github.com/muety/wakapi/middlewares/logging.go:21.43,27.3 1 0
github.com/muety/wakapi/middlewares/logging.go:30.80,39.44 7 0
@ -550,231 +508,48 @@ github.com/muety/wakapi/middlewares/sentry.go:16.43,20.3 1 0
github.com/muety/wakapi/middlewares/sentry.go:23.78,26.54 3 0
github.com/muety/wakapi/middlewares/sentry.go:26.54,27.43 1 0
github.com/muety/wakapi/middlewares/sentry.go:27.43,29.4 1 0
github.com/muety/wakapi/services/project_label.go:20.111,27.2 1 0
github.com/muety/wakapi/services/project_label.go:29.80,31.2 1 0
github.com/muety/wakapi/services/project_label.go:33.90,34.51 1 0
github.com/muety/wakapi/services/project_label.go:38.2,39.16 2 0
github.com/muety/wakapi/services/project_label.go:42.2,43.20 2 0
github.com/muety/wakapi/services/project_label.go:34.51,36.3 1 0
github.com/muety/wakapi/services/project_label.go:39.16,41.3 1 0
github.com/muety/wakapi/services/project_label.go:46.108,49.16 3 0
github.com/muety/wakapi/services/project_label.go:53.2,53.31 1 0
github.com/muety/wakapi/services/project_label.go:60.2,60.29 1 0
github.com/muety/wakapi/services/project_label.go:49.16,51.3 1 0
github.com/muety/wakapi/services/project_label.go:53.31,54.50 1 0
github.com/muety/wakapi/services/project_label.go:54.50,56.4 1 0
github.com/muety/wakapi/services/project_label.go:56.9,58.4 1 0
github.com/muety/wakapi/services/project_label.go:63.116,66.16 3 0
github.com/muety/wakapi/services/project_label.go:70.2,70.31 1 0
github.com/muety/wakapi/services/project_label.go:77.2,77.29 1 0
github.com/muety/wakapi/services/project_label.go:66.16,68.3 1 0
github.com/muety/wakapi/services/project_label.go:70.31,71.45 1 0
github.com/muety/wakapi/services/project_label.go:71.45,73.4 1 0
github.com/muety/wakapi/services/project_label.go:73.9,75.4 1 0
github.com/muety/wakapi/services/project_label.go:80.98,82.16 2 0
github.com/muety/wakapi/services/project_label.go:86.2,88.20 3 0
github.com/muety/wakapi/services/project_label.go:82.16,84.3 1 0
github.com/muety/wakapi/services/project_label.go:91.74,92.24 1 0
github.com/muety/wakapi/services/project_label.go:95.2,98.12 4 0
github.com/muety/wakapi/services/project_label.go:92.24,94.3 1 0
github.com/muety/wakapi/services/project_label.go:101.89,103.14 2 0
github.com/muety/wakapi/services/project_label.go:106.2,109.4 1 0
github.com/muety/wakapi/services/project_label.go:103.14,105.3 1 0
github.com/muety/wakapi/services/report.go:30.122,44.33 4 0
github.com/muety/wakapi/services/report.go:50.2,50.12 1 0
github.com/muety/wakapi/services/report.go:44.33,45.31 1 0
github.com/muety/wakapi/services/report.go:45.31,47.4 1 0
github.com/muety/wakapi/services/report.go:53.38,57.16 3 0
github.com/muety/wakapi/services/report.go:61.2,62.26 2 0
github.com/muety/wakapi/services/report.go:57.16,59.3 1 0
github.com/muety/wakapi/services/report.go:62.26,64.3 1 0
github.com/muety/wakapi/services/report.go:69.61,74.22 3 0
github.com/muety/wakapi/services/report.go:80.2,80.61 1 0
github.com/muety/wakapi/services/report.go:94.2,94.24 1 0
github.com/muety/wakapi/services/report.go:74.22,77.3 2 0
github.com/muety/wakapi/services/report.go:80.61,89.47 3 0
github.com/muety/wakapi/services/report.go:89.47,91.4 1 0
github.com/muety/wakapi/services/report.go:97.80,98.22 1 0
github.com/muety/wakapi/services/report.go:102.2,102.29 1 0
github.com/muety/wakapi/services/report.go:107.2,111.16 4 0
github.com/muety/wakapi/services/report.go:116.2,123.65 2 0
github.com/muety/wakapi/services/report.go:128.2,129.12 2 0
github.com/muety/wakapi/services/report.go:98.22,100.3 1 0
github.com/muety/wakapi/services/report.go:102.29,105.3 2 0
github.com/muety/wakapi/services/report.go:111.16,114.3 2 0
github.com/muety/wakapi/services/report.go:123.65,126.3 2 0
github.com/muety/wakapi/services/report.go:132.63,133.41 1 0
github.com/muety/wakapi/services/report.go:140.2,140.12 1 0
github.com/muety/wakapi/services/report.go:133.41,134.30 1 0
github.com/muety/wakapi/services/report.go:134.30,135.16 1 0
github.com/muety/wakapi/services/report.go:135.16,137.5 1 0
github.com/muety/wakapi/services/aggregation.go:29.142,37.2 1 0
github.com/muety/wakapi/services/aggregation.go:46.43,48.37 1 0
github.com/muety/wakapi/services/aggregation.go:52.2,54.19 3 0
github.com/muety/wakapi/services/aggregation.go:48.37,50.3 1 0
github.com/muety/wakapi/services/aggregation.go:57.67,58.47 1 0
github.com/muety/wakapi/services/aggregation.go:61.2,66.40 4 0
github.com/muety/wakapi/services/aggregation.go:70.2,70.50 1 0
github.com/muety/wakapi/services/aggregation.go:75.2,75.60 1 0
github.com/muety/wakapi/services/aggregation.go:81.2,81.35 1 0
github.com/muety/wakapi/services/aggregation.go:58.47,60.3 1 0
github.com/muety/wakapi/services/aggregation.go:66.40,68.3 1 0
github.com/muety/wakapi/services/aggregation.go:70.50,72.3 1 0
github.com/muety/wakapi/services/aggregation.go:75.60,79.3 3 0
github.com/muety/wakapi/services/aggregation.go:84.109,85.24 1 0
github.com/muety/wakapi/services/aggregation.go:85.24,86.111 1 0
github.com/muety/wakapi/services/aggregation.go:86.111,88.4 1 0
github.com/muety/wakapi/services/aggregation.go:88.9,91.4 2 0
github.com/muety/wakapi/services/aggregation.go:95.80,96.33 1 0
github.com/muety/wakapi/services/aggregation.go:96.33,97.60 1 0
github.com/muety/wakapi/services/aggregation.go:97.60,99.4 1 0
github.com/muety/wakapi/services/aggregation.go:103.100,107.59 3 0
github.com/muety/wakapi/services/aggregation.go:122.2,123.16 2 0
github.com/muety/wakapi/services/aggregation.go:129.2,130.16 2 0
github.com/muety/wakapi/services/aggregation.go:136.2,137.44 2 0
github.com/muety/wakapi/services/aggregation.go:142.2,142.41 1 0
github.com/muety/wakapi/services/aggregation.go:156.2,156.12 1 0
github.com/muety/wakapi/services/aggregation.go:107.59,110.3 2 0
github.com/muety/wakapi/services/aggregation.go:110.8,110.47 1 0
github.com/muety/wakapi/services/aggregation.go:110.47,112.30 2 0
github.com/muety/wakapi/services/aggregation.go:112.30,113.43 1 0
github.com/muety/wakapi/services/aggregation.go:113.43,115.5 1 0
github.com/muety/wakapi/services/aggregation.go:117.8,119.3 1 0
github.com/muety/wakapi/services/aggregation.go:123.16,126.3 2 0
github.com/muety/wakapi/services/aggregation.go:130.16,133.3 2 0
github.com/muety/wakapi/services/aggregation.go:137.44,139.3 1 0
github.com/muety/wakapi/services/aggregation.go:142.41,143.21 1 0
github.com/muety/wakapi/services/aggregation.go:143.21,147.4 1 0
github.com/muety/wakapi/services/aggregation.go:147.9,147.62 1 0
github.com/muety/wakapi/services/aggregation.go:147.62,151.4 1 0
github.com/muety/wakapi/services/aggregation.go:159.73,162.27 3 0
github.com/muety/wakapi/services/aggregation.go:167.2,167.27 1 0
github.com/muety/wakapi/services/aggregation.go:170.2,170.12 1 0
github.com/muety/wakapi/services/aggregation.go:162.27,163.39 1 0
github.com/muety/wakapi/services/aggregation.go:163.39,165.4 1 0
github.com/muety/wakapi/services/aggregation.go:167.27,169.3 1 0
github.com/muety/wakapi/services/aggregation.go:173.69,176.27 3 0
github.com/muety/wakapi/services/aggregation.go:176.27,178.3 1 0
github.com/muety/wakapi/services/aggregation.go:181.83,196.41 5 0
github.com/muety/wakapi/services/aggregation.go:196.41,206.3 3 0
github.com/muety/wakapi/services/aggregation.go:209.34,212.2 2 0
github.com/muety/wakapi/services/alias.go:17.77,22.2 1 1
github.com/muety/wakapi/services/alias.go:26.60,27.43 1 1
github.com/muety/wakapi/services/alias.go:30.2,30.14 1 1
github.com/muety/wakapi/services/alias.go:27.43,29.3 1 1
github.com/muety/wakapi/services/alias.go:33.62,35.16 2 1
github.com/muety/wakapi/services/alias.go:38.2,38.12 1 1
github.com/muety/wakapi/services/alias.go:35.16,37.3 1 1
github.com/muety/wakapi/services/alias.go:41.76,43.16 2 0
github.com/muety/wakapi/services/alias.go:46.2,46.21 1 0
github.com/muety/wakapi/services/alias.go:43.16,45.3 1 0
github.com/muety/wakapi/services/alias.go:49.113,51.16 2 0
github.com/muety/wakapi/services/alias.go:54.2,54.21 1 0
github.com/muety/wakapi/services/alias.go:51.16,53.3 1 0
github.com/muety/wakapi/services/alias.go:57.108,58.32 1 1
github.com/muety/wakapi/services/alias.go:64.2,65.46 2 1
github.com/muety/wakapi/services/alias.go:70.2,70.19 1 1
github.com/muety/wakapi/services/alias.go:58.32,59.52 1 1
github.com/muety/wakapi/services/alias.go:59.52,61.4 1 1
github.com/muety/wakapi/services/alias.go:65.46,66.48 1 1
github.com/muety/wakapi/services/alias.go:66.48,68.4 1 1
github.com/muety/wakapi/services/alias.go:73.77,75.16 2 0
github.com/muety/wakapi/services/alias.go:78.2,79.20 2 0
github.com/muety/wakapi/services/alias.go:75.16,77.3 1 0
github.com/muety/wakapi/services/alias.go:82.60,83.24 1 0
github.com/muety/wakapi/services/alias.go:86.2,88.12 3 0
github.com/muety/wakapi/services/alias.go:83.24,85.3 1 0
github.com/muety/wakapi/services/alias.go:91.69,94.28 3 0
github.com/muety/wakapi/services/alias.go:102.2,104.31 2 0
github.com/muety/wakapi/services/alias.go:108.2,108.12 1 0
github.com/muety/wakapi/services/alias.go:94.28,95.21 1 0
github.com/muety/wakapi/services/alias.go:98.3,99.16 2 0
github.com/muety/wakapi/services/alias.go:95.21,97.4 1 0
github.com/muety/wakapi/services/alias.go:104.31,106.3 1 0
github.com/muety/wakapi/services/alias.go:111.52,112.51 1 0
github.com/muety/wakapi/services/alias.go:112.51,114.3 1 0
github.com/muety/wakapi/services/diagnostics.go:14.101,19.2 1 0
github.com/muety/wakapi/services/diagnostics.go:21.101,23.2 1 0
github.com/muety/wakapi/services/heartbeat.go:25.141,39.33 3 0
github.com/muety/wakapi/services/heartbeat.go:47.2,47.12 1 0
github.com/muety/wakapi/services/heartbeat.go:39.33,40.31 1 0
github.com/muety/wakapi/services/heartbeat.go:40.31,44.4 3 0
github.com/muety/wakapi/services/heartbeat.go:50.72,53.2 2 0
github.com/muety/wakapi/services/heartbeat.go:55.80,60.32 3 0
github.com/muety/wakapi/services/heartbeat.go:68.2,69.16 2 0
github.com/muety/wakapi/services/heartbeat.go:72.2,72.12 1 0
github.com/muety/wakapi/services/heartbeat.go:60.32,61.36 1 0
github.com/muety/wakapi/services/heartbeat.go:65.3,65.43 1 0
github.com/muety/wakapi/services/heartbeat.go:61.36,64.4 2 0
github.com/muety/wakapi/services/heartbeat.go:69.16,71.3 1 0
github.com/muety/wakapi/services/heartbeat.go:75.53,77.8 2 0
github.com/muety/wakapi/services/heartbeat.go:80.2,81.16 2 0
github.com/muety/wakapi/services/heartbeat.go:84.2,84.19 1 0
github.com/muety/wakapi/services/heartbeat.go:77.8,79.3 1 0
github.com/muety/wakapi/services/heartbeat.go:81.16,83.3 1 0
github.com/muety/wakapi/services/heartbeat.go:87.76,90.8 3 0
github.com/muety/wakapi/services/heartbeat.go:93.2,94.16 2 0
github.com/muety/wakapi/services/heartbeat.go:97.2,97.19 1 0
github.com/muety/wakapi/services/heartbeat.go:90.8,92.3 1 0
github.com/muety/wakapi/services/heartbeat.go:94.16,96.3 1 0
github.com/muety/wakapi/services/heartbeat.go:100.96,104.26 3 0
github.com/muety/wakapi/services/heartbeat.go:114.2,115.16 2 0
github.com/muety/wakapi/services/heartbeat.go:119.2,119.28 1 0
github.com/muety/wakapi/services/heartbeat.go:125.2,125.24 1 0
github.com/muety/wakapi/services/heartbeat.go:104.26,107.9 3 0
github.com/muety/wakapi/services/heartbeat.go:107.9,109.4 1 0
github.com/muety/wakapi/services/heartbeat.go:109.9,111.4 1 0
github.com/muety/wakapi/services/heartbeat.go:115.16,117.3 1 0
github.com/muety/wakapi/services/heartbeat.go:119.28,123.3 3 0
github.com/muety/wakapi/services/heartbeat.go:128.111,130.16 2 0
github.com/muety/wakapi/services/heartbeat.go:133.2,133.43 1 0
github.com/muety/wakapi/services/heartbeat.go:130.16,132.3 1 0
github.com/muety/wakapi/services/heartbeat.go:136.92,138.2 1 0
github.com/muety/wakapi/services/heartbeat.go:140.116,142.2 1 0
github.com/muety/wakapi/services/heartbeat.go:144.78,146.2 1 0
github.com/muety/wakapi/services/heartbeat.go:148.104,150.55 2 0
github.com/muety/wakapi/services/heartbeat.go:154.2,155.16 2 0
github.com/muety/wakapi/services/heartbeat.go:159.2,160.28 2 0
github.com/muety/wakapi/services/heartbeat.go:166.2,167.22 2 0
github.com/muety/wakapi/services/heartbeat.go:150.55,152.3 1 0
github.com/muety/wakapi/services/heartbeat.go:155.16,157.3 1 0
github.com/muety/wakapi/services/heartbeat.go:160.28,161.33 1 0
github.com/muety/wakapi/services/heartbeat.go:161.33,163.4 1 0
github.com/muety/wakapi/services/heartbeat.go:170.62,172.2 1 0
github.com/muety/wakapi/services/heartbeat.go:174.116,176.16 2 0
github.com/muety/wakapi/services/heartbeat.go:180.2,180.28 1 0
github.com/muety/wakapi/services/heartbeat.go:184.2,184.24 1 0
github.com/muety/wakapi/services/heartbeat.go:176.16,178.3 1 0
github.com/muety/wakapi/services/heartbeat.go:180.28,182.3 1 0
github.com/muety/wakapi/services/heartbeat.go:187.96,189.2 1 0
github.com/muety/wakapi/services/heartbeat.go:191.107,193.56 2 0
github.com/muety/wakapi/services/heartbeat.go:193.56,194.58 1 0
github.com/muety/wakapi/services/heartbeat.go:194.58,198.4 1 0
github.com/muety/wakapi/services/heartbeat.go:202.85,208.2 5 0
github.com/muety/wakapi/services/heartbeat.go:210.74,211.32 1 0
github.com/muety/wakapi/services/heartbeat.go:211.32,216.3 1 0
github.com/muety/wakapi/services/heartbeat.go:219.72,221.2 1 0
github.com/muety/wakapi/services/heartbeat.go:223.58,225.2 1 0
github.com/muety/wakapi/services/heartbeat.go:227.60,229.2 1 0
github.com/muety/wakapi/services/language_mapping.go:18.118,24.2 1 0
github.com/muety/wakapi/services/language_mapping.go:26.86,28.2 1 0
github.com/muety/wakapi/services/language_mapping.go:30.96,31.53 1 0
github.com/muety/wakapi/services/language_mapping.go:35.2,36.16 2 0
github.com/muety/wakapi/services/language_mapping.go:39.2,40.22 2 0
github.com/muety/wakapi/services/language_mapping.go:31.53,33.3 1 0
github.com/muety/wakapi/services/language_mapping.go:36.16,38.3 1 0
github.com/muety/wakapi/services/language_mapping.go:43.92,46.16 3 0
github.com/muety/wakapi/services/language_mapping.go:50.2,50.33 1 0
github.com/muety/wakapi/services/language_mapping.go:53.2,53.22 1 0
github.com/muety/wakapi/services/language_mapping.go:46.16,48.3 1 0
github.com/muety/wakapi/services/language_mapping.go:50.33,52.3 1 0
github.com/muety/wakapi/services/language_mapping.go:56.109,58.16 2 0
github.com/muety/wakapi/services/language_mapping.go:62.2,63.20 2 0
github.com/muety/wakapi/services/language_mapping.go:58.16,60.3 1 0
github.com/muety/wakapi/services/language_mapping.go:66.82,67.26 1 0
github.com/muety/wakapi/services/language_mapping.go:70.2,72.12 3 0
github.com/muety/wakapi/services/language_mapping.go:67.26,69.3 1 0
github.com/muety/wakapi/services/language_mapping.go:75.74,78.2 1 0
github.com/muety/wakapi/middlewares/authenticate.go:30.91,36.2 1 1
github.com/muety/wakapi/middlewares/authenticate.go:38.90,41.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:43.90,46.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:48.71,49.71 1 0
github.com/muety/wakapi/middlewares/authenticate.go:49.71,51.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:54.107,58.16 3 0
github.com/muety/wakapi/middlewares/authenticate.go:61.2,61.16 1 0
github.com/muety/wakapi/middlewares/authenticate.go:65.2,65.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:81.2,82.12 2 0
github.com/muety/wakapi/middlewares/authenticate.go:58.16,60.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:61.16,63.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:65.31,66.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:71.3,71.29 1 0
github.com/muety/wakapi/middlewares/authenticate.go:78.3,78.9 1 0
github.com/muety/wakapi/middlewares/authenticate.go:66.31,69.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:71.29,74.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:74.9,77.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:85.70,86.39 1 0
github.com/muety/wakapi/middlewares/authenticate.go:91.2,91.14 1 0
github.com/muety/wakapi/middlewares/authenticate.go:86.39,87.60 1 0
github.com/muety/wakapi/middlewares/authenticate.go:87.60,89.4 1 0
github.com/muety/wakapi/middlewares/authenticate.go:94.98,96.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:100.2,103.16 4 1
github.com/muety/wakapi/middlewares/authenticate.go:106.2,106.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:96.16,98.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:103.16,105.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:109.97,113.19 4 1
github.com/muety/wakapi/middlewares/authenticate.go:116.2,117.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:120.2,120.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:113.19,115.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:117.16,119.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:123.92,125.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:129.2,130.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:137.2,137.18 1 0
github.com/muety/wakapi/middlewares/authenticate.go:125.16,127.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:130.16,132.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:13.83,14.43 1 0
github.com/muety/wakapi/middlewares/filetype.go:14.43,19.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:22.84,24.34 2 0
github.com/muety/wakapi/middlewares/filetype.go:31.2,31.27 1 0
github.com/muety/wakapi/middlewares/filetype.go:24.34,25.50 1 0
github.com/muety/wakapi/middlewares/filetype.go:25.50,29.4 3 0
github.com/muety/wakapi/services/summary.go:32.191,44.33 3 1
github.com/muety/wakapi/services/summary.go:55.2,55.12 1 1
github.com/muety/wakapi/services/summary.go:44.33,45.31 1 1
@ -887,6 +662,165 @@ github.com/muety/wakapi/services/summary.go:413.59,415.2 1 1
github.com/muety/wakapi/services/summary.go:417.63,418.37 1 0
github.com/muety/wakapi/services/summary.go:418.37,419.36 1 0
github.com/muety/wakapi/services/summary.go:419.36,421.4 1 0
github.com/muety/wakapi/services/heartbeat.go:26.141,40.33 3 0
github.com/muety/wakapi/services/heartbeat.go:48.2,48.12 1 0
github.com/muety/wakapi/services/heartbeat.go:40.33,41.31 1 0
github.com/muety/wakapi/services/heartbeat.go:41.31,45.4 3 0
github.com/muety/wakapi/services/heartbeat.go:51.72,54.2 2 0
github.com/muety/wakapi/services/heartbeat.go:56.80,61.32 3 0
github.com/muety/wakapi/services/heartbeat.go:69.2,70.16 2 0
github.com/muety/wakapi/services/heartbeat.go:73.2,73.12 1 0
github.com/muety/wakapi/services/heartbeat.go:61.32,62.36 1 0
github.com/muety/wakapi/services/heartbeat.go:66.3,66.46 1 0
github.com/muety/wakapi/services/heartbeat.go:62.36,65.4 2 0
github.com/muety/wakapi/services/heartbeat.go:70.16,72.3 1 0
github.com/muety/wakapi/services/heartbeat.go:76.53,78.8 2 0
github.com/muety/wakapi/services/heartbeat.go:81.2,82.16 2 0
github.com/muety/wakapi/services/heartbeat.go:85.2,85.19 1 0
github.com/muety/wakapi/services/heartbeat.go:78.8,80.3 1 0
github.com/muety/wakapi/services/heartbeat.go:82.16,84.3 1 0
github.com/muety/wakapi/services/heartbeat.go:88.76,91.8 3 0
github.com/muety/wakapi/services/heartbeat.go:94.2,95.16 2 0
github.com/muety/wakapi/services/heartbeat.go:98.2,98.19 1 0
github.com/muety/wakapi/services/heartbeat.go:91.8,93.3 1 0
github.com/muety/wakapi/services/heartbeat.go:95.16,97.3 1 0
github.com/muety/wakapi/services/heartbeat.go:101.96,105.26 3 0
github.com/muety/wakapi/services/heartbeat.go:115.2,116.16 2 0
github.com/muety/wakapi/services/heartbeat.go:120.2,120.28 1 0
github.com/muety/wakapi/services/heartbeat.go:126.2,126.24 1 0
github.com/muety/wakapi/services/heartbeat.go:105.26,108.9 3 0
github.com/muety/wakapi/services/heartbeat.go:108.9,110.4 1 0
github.com/muety/wakapi/services/heartbeat.go:110.9,112.4 1 0
github.com/muety/wakapi/services/heartbeat.go:116.16,118.3 1 0
github.com/muety/wakapi/services/heartbeat.go:120.28,124.3 3 0
github.com/muety/wakapi/services/heartbeat.go:129.111,131.16 2 0
github.com/muety/wakapi/services/heartbeat.go:134.2,134.43 1 0
github.com/muety/wakapi/services/heartbeat.go:131.16,133.3 1 0
github.com/muety/wakapi/services/heartbeat.go:137.92,139.2 1 0
github.com/muety/wakapi/services/heartbeat.go:141.116,143.2 1 0
github.com/muety/wakapi/services/heartbeat.go:145.78,147.2 1 0
github.com/muety/wakapi/services/heartbeat.go:149.104,151.54 2 0
github.com/muety/wakapi/services/heartbeat.go:157.2,158.16 2 0
github.com/muety/wakapi/services/heartbeat.go:162.2,163.28 2 0
github.com/muety/wakapi/services/heartbeat.go:169.2,170.22 2 0
github.com/muety/wakapi/services/heartbeat.go:151.54,155.3 3 0
github.com/muety/wakapi/services/heartbeat.go:158.16,160.3 1 0
github.com/muety/wakapi/services/heartbeat.go:163.28,164.33 1 0
github.com/muety/wakapi/services/heartbeat.go:164.33,166.4 1 0
github.com/muety/wakapi/services/heartbeat.go:173.62,175.2 1 0
github.com/muety/wakapi/services/heartbeat.go:177.116,179.16 2 0
github.com/muety/wakapi/services/heartbeat.go:183.2,183.28 1 0
github.com/muety/wakapi/services/heartbeat.go:187.2,187.24 1 0
github.com/muety/wakapi/services/heartbeat.go:179.16,181.3 1 0
github.com/muety/wakapi/services/heartbeat.go:183.28,185.3 1 0
github.com/muety/wakapi/services/heartbeat.go:190.96,192.2 1 0
github.com/muety/wakapi/services/heartbeat.go:194.107,196.55 2 0
github.com/muety/wakapi/services/heartbeat.go:196.55,202.41 4 0
github.com/muety/wakapi/services/heartbeat.go:202.41,207.4 2 0
github.com/muety/wakapi/services/heartbeat.go:211.85,217.2 5 0
github.com/muety/wakapi/services/heartbeat.go:219.74,220.32 1 0
github.com/muety/wakapi/services/heartbeat.go:220.32,225.3 1 0
github.com/muety/wakapi/services/heartbeat.go:228.72,230.2 1 0
github.com/muety/wakapi/services/heartbeat.go:232.58,234.2 1 0
github.com/muety/wakapi/services/heartbeat.go:236.60,238.2 1 0
github.com/muety/wakapi/services/language_mapping.go:18.118,24.2 1 0
github.com/muety/wakapi/services/language_mapping.go:26.86,28.2 1 0
github.com/muety/wakapi/services/language_mapping.go:30.96,31.53 1 0
github.com/muety/wakapi/services/language_mapping.go:35.2,36.16 2 0
github.com/muety/wakapi/services/language_mapping.go:39.2,40.22 2 0
github.com/muety/wakapi/services/language_mapping.go:31.53,33.3 1 0
github.com/muety/wakapi/services/language_mapping.go:36.16,38.3 1 0
github.com/muety/wakapi/services/language_mapping.go:43.92,46.16 3 0
github.com/muety/wakapi/services/language_mapping.go:50.2,50.33 1 0
github.com/muety/wakapi/services/language_mapping.go:53.2,53.22 1 0
github.com/muety/wakapi/services/language_mapping.go:46.16,48.3 1 0
github.com/muety/wakapi/services/language_mapping.go:50.33,52.3 1 0
github.com/muety/wakapi/services/language_mapping.go:56.109,58.16 2 0
github.com/muety/wakapi/services/language_mapping.go:62.2,63.20 2 0
github.com/muety/wakapi/services/language_mapping.go:58.16,60.3 1 0
github.com/muety/wakapi/services/language_mapping.go:66.82,67.26 1 0
github.com/muety/wakapi/services/language_mapping.go:70.2,72.12 3 0
github.com/muety/wakapi/services/language_mapping.go:67.26,69.3 1 0
github.com/muety/wakapi/services/language_mapping.go:75.74,78.2 1 0
github.com/muety/wakapi/services/project_label.go:20.111,27.2 1 0
github.com/muety/wakapi/services/project_label.go:29.80,31.2 1 0
github.com/muety/wakapi/services/project_label.go:33.90,34.51 1 0
github.com/muety/wakapi/services/project_label.go:38.2,39.16 2 0
github.com/muety/wakapi/services/project_label.go:42.2,43.20 2 0
github.com/muety/wakapi/services/project_label.go:34.51,36.3 1 0
github.com/muety/wakapi/services/project_label.go:39.16,41.3 1 0
github.com/muety/wakapi/services/project_label.go:46.108,49.16 3 0
github.com/muety/wakapi/services/project_label.go:53.2,53.31 1 0
github.com/muety/wakapi/services/project_label.go:60.2,60.29 1 0
github.com/muety/wakapi/services/project_label.go:49.16,51.3 1 0
github.com/muety/wakapi/services/project_label.go:53.31,54.50 1 0
github.com/muety/wakapi/services/project_label.go:54.50,56.4 1 0
github.com/muety/wakapi/services/project_label.go:56.9,58.4 1 0
github.com/muety/wakapi/services/project_label.go:63.116,66.16 3 0
github.com/muety/wakapi/services/project_label.go:70.2,70.31 1 0
github.com/muety/wakapi/services/project_label.go:77.2,77.29 1 0
github.com/muety/wakapi/services/project_label.go:66.16,68.3 1 0
github.com/muety/wakapi/services/project_label.go:70.31,71.45 1 0
github.com/muety/wakapi/services/project_label.go:71.45,73.4 1 0
github.com/muety/wakapi/services/project_label.go:73.9,75.4 1 0
github.com/muety/wakapi/services/project_label.go:80.98,82.16 2 0
github.com/muety/wakapi/services/project_label.go:86.2,88.20 3 0
github.com/muety/wakapi/services/project_label.go:82.16,84.3 1 0
github.com/muety/wakapi/services/project_label.go:91.74,92.24 1 0
github.com/muety/wakapi/services/project_label.go:95.2,98.12 4 0
github.com/muety/wakapi/services/project_label.go:92.24,94.3 1 0
github.com/muety/wakapi/services/project_label.go:101.89,103.14 2 0
github.com/muety/wakapi/services/project_label.go:106.2,109.4 1 0
github.com/muety/wakapi/services/project_label.go:103.14,105.3 1 0
github.com/muety/wakapi/services/misc.go:21.126,28.2 1 0
github.com/muety/wakapi/services/misc.go:40.50,42.48 1 0
github.com/muety/wakapi/services/misc.go:46.2,48.19 3 0
github.com/muety/wakapi/services/misc.go:42.48,44.3 1 0
github.com/muety/wakapi/services/misc.go:51.51,53.16 2 0
github.com/muety/wakapi/services/misc.go:57.2,60.26 3 0
github.com/muety/wakapi/services/misc.go:66.2,68.40 2 0
github.com/muety/wakapi/services/misc.go:73.2,75.33 3 0
github.com/muety/wakapi/services/misc.go:79.2,84.17 2 0
github.com/muety/wakapi/services/misc.go:88.2,91.17 1 0
github.com/muety/wakapi/services/misc.go:95.2,95.12 1 0
github.com/muety/wakapi/services/misc.go:53.16,55.3 1 0
github.com/muety/wakapi/services/misc.go:60.26,65.3 1 0
github.com/muety/wakapi/services/misc.go:68.40,70.3 1 0
github.com/muety/wakapi/services/misc.go:75.33,78.3 2 0
github.com/muety/wakapi/services/misc.go:84.17,86.3 1 0
github.com/muety/wakapi/services/misc.go:91.17,93.3 1 0
github.com/muety/wakapi/services/misc.go:98.116,99.24 1 0
github.com/muety/wakapi/services/misc.go:99.24,100.151 1 0
github.com/muety/wakapi/services/misc.go:100.151,102.4 1 0
github.com/muety/wakapi/services/misc.go:102.9,107.4 1 0
github.com/muety/wakapi/services/report.go:30.122,44.33 4 0
github.com/muety/wakapi/services/report.go:50.2,50.12 1 0
github.com/muety/wakapi/services/report.go:44.33,45.31 1 0
github.com/muety/wakapi/services/report.go:45.31,47.4 1 0
github.com/muety/wakapi/services/report.go:53.38,57.16 3 0
github.com/muety/wakapi/services/report.go:61.2,62.26 2 0
github.com/muety/wakapi/services/report.go:57.16,59.3 1 0
github.com/muety/wakapi/services/report.go:62.26,64.3 1 0
github.com/muety/wakapi/services/report.go:69.61,74.22 3 0
github.com/muety/wakapi/services/report.go:80.2,80.61 1 0
github.com/muety/wakapi/services/report.go:94.2,94.24 1 0
github.com/muety/wakapi/services/report.go:74.22,77.3 2 0
github.com/muety/wakapi/services/report.go:80.61,89.47 3 0
github.com/muety/wakapi/services/report.go:89.47,91.4 1 0
github.com/muety/wakapi/services/report.go:97.80,98.22 1 0
github.com/muety/wakapi/services/report.go:102.2,102.29 1 0
github.com/muety/wakapi/services/report.go:107.2,111.16 4 0
github.com/muety/wakapi/services/report.go:116.2,123.65 2 0
github.com/muety/wakapi/services/report.go:128.2,129.12 2 0
github.com/muety/wakapi/services/report.go:98.22,100.3 1 0
github.com/muety/wakapi/services/report.go:102.29,105.3 2 0
github.com/muety/wakapi/services/report.go:111.16,114.3 2 0
github.com/muety/wakapi/services/report.go:123.65,126.3 2 0
github.com/muety/wakapi/services/report.go:132.63,133.41 1 0
github.com/muety/wakapi/services/report.go:140.2,140.12 1 0
github.com/muety/wakapi/services/report.go:133.41,134.30 1 0
github.com/muety/wakapi/services/report.go:134.30,135.16 1 0
github.com/muety/wakapi/services/report.go:135.16,137.5 1 0
github.com/muety/wakapi/services/user.go:24.99,34.33 3 0
github.com/muety/wakapi/services/user.go:55.2,55.12 1 0
github.com/muety/wakapi/services/user.go:34.33,35.31 1 0
@ -933,6 +867,93 @@ github.com/muety/wakapi/services/user.go:173.85,175.2 1 0
github.com/muety/wakapi/services/user.go:177.57,184.2 4 0
github.com/muety/wakapi/services/user.go:186.38,188.2 1 0
github.com/muety/wakapi/services/user.go:190.57,195.2 1 0
github.com/muety/wakapi/services/aggregation.go:29.142,37.2 1 0
github.com/muety/wakapi/services/aggregation.go:46.43,48.37 1 0
github.com/muety/wakapi/services/aggregation.go:52.2,54.19 3 0
github.com/muety/wakapi/services/aggregation.go:48.37,50.3 1 0
github.com/muety/wakapi/services/aggregation.go:57.67,58.47 1 0
github.com/muety/wakapi/services/aggregation.go:61.2,66.40 4 0
github.com/muety/wakapi/services/aggregation.go:70.2,70.50 1 0
github.com/muety/wakapi/services/aggregation.go:75.2,75.60 1 0
github.com/muety/wakapi/services/aggregation.go:81.2,81.35 1 0
github.com/muety/wakapi/services/aggregation.go:58.47,60.3 1 0
github.com/muety/wakapi/services/aggregation.go:66.40,68.3 1 0
github.com/muety/wakapi/services/aggregation.go:70.50,72.3 1 0
github.com/muety/wakapi/services/aggregation.go:75.60,79.3 3 0
github.com/muety/wakapi/services/aggregation.go:84.109,85.24 1 0
github.com/muety/wakapi/services/aggregation.go:85.24,86.111 1 0
github.com/muety/wakapi/services/aggregation.go:86.111,88.4 1 0
github.com/muety/wakapi/services/aggregation.go:88.9,91.4 2 0
github.com/muety/wakapi/services/aggregation.go:95.80,96.33 1 0
github.com/muety/wakapi/services/aggregation.go:96.33,97.60 1 0
github.com/muety/wakapi/services/aggregation.go:97.60,99.4 1 0
github.com/muety/wakapi/services/aggregation.go:103.100,107.59 3 0
github.com/muety/wakapi/services/aggregation.go:122.2,123.16 2 0
github.com/muety/wakapi/services/aggregation.go:129.2,130.16 2 0
github.com/muety/wakapi/services/aggregation.go:136.2,137.44 2 0
github.com/muety/wakapi/services/aggregation.go:142.2,142.41 1 0
github.com/muety/wakapi/services/aggregation.go:156.2,156.12 1 0
github.com/muety/wakapi/services/aggregation.go:107.59,110.3 2 0
github.com/muety/wakapi/services/aggregation.go:110.8,110.47 1 0
github.com/muety/wakapi/services/aggregation.go:110.47,112.30 2 0
github.com/muety/wakapi/services/aggregation.go:112.30,113.43 1 0
github.com/muety/wakapi/services/aggregation.go:113.43,115.5 1 0
github.com/muety/wakapi/services/aggregation.go:117.8,119.3 1 0
github.com/muety/wakapi/services/aggregation.go:123.16,126.3 2 0
github.com/muety/wakapi/services/aggregation.go:130.16,133.3 2 0
github.com/muety/wakapi/services/aggregation.go:137.44,139.3 1 0
github.com/muety/wakapi/services/aggregation.go:142.41,143.21 1 0
github.com/muety/wakapi/services/aggregation.go:143.21,147.4 1 0
github.com/muety/wakapi/services/aggregation.go:147.9,147.62 1 0
github.com/muety/wakapi/services/aggregation.go:147.62,151.4 1 0
github.com/muety/wakapi/services/aggregation.go:159.73,162.27 3 0
github.com/muety/wakapi/services/aggregation.go:167.2,167.27 1 0
github.com/muety/wakapi/services/aggregation.go:170.2,170.12 1 0
github.com/muety/wakapi/services/aggregation.go:162.27,163.39 1 0
github.com/muety/wakapi/services/aggregation.go:163.39,165.4 1 0
github.com/muety/wakapi/services/aggregation.go:167.27,169.3 1 0
github.com/muety/wakapi/services/aggregation.go:173.69,176.27 3 0
github.com/muety/wakapi/services/aggregation.go:176.27,178.3 1 0
github.com/muety/wakapi/services/aggregation.go:181.83,196.41 5 0
github.com/muety/wakapi/services/aggregation.go:196.41,206.3 3 0
github.com/muety/wakapi/services/aggregation.go:209.34,212.2 2 0
github.com/muety/wakapi/services/alias.go:17.77,22.2 1 1
github.com/muety/wakapi/services/alias.go:26.60,27.43 1 1
github.com/muety/wakapi/services/alias.go:30.2,30.14 1 1
github.com/muety/wakapi/services/alias.go:27.43,29.3 1 1
github.com/muety/wakapi/services/alias.go:33.62,35.16 2 1
github.com/muety/wakapi/services/alias.go:38.2,38.12 1 1
github.com/muety/wakapi/services/alias.go:35.16,37.3 1 1
github.com/muety/wakapi/services/alias.go:41.76,43.16 2 0
github.com/muety/wakapi/services/alias.go:46.2,46.21 1 0
github.com/muety/wakapi/services/alias.go:43.16,45.3 1 0
github.com/muety/wakapi/services/alias.go:49.113,51.16 2 0
github.com/muety/wakapi/services/alias.go:54.2,54.21 1 0
github.com/muety/wakapi/services/alias.go:51.16,53.3 1 0
github.com/muety/wakapi/services/alias.go:57.108,58.32 1 1
github.com/muety/wakapi/services/alias.go:64.2,65.46 2 1
github.com/muety/wakapi/services/alias.go:70.2,70.19 1 1
github.com/muety/wakapi/services/alias.go:58.32,59.52 1 1
github.com/muety/wakapi/services/alias.go:59.52,61.4 1 1
github.com/muety/wakapi/services/alias.go:65.46,66.48 1 1
github.com/muety/wakapi/services/alias.go:66.48,68.4 1 1
github.com/muety/wakapi/services/alias.go:73.77,75.16 2 0
github.com/muety/wakapi/services/alias.go:78.2,79.20 2 0
github.com/muety/wakapi/services/alias.go:75.16,77.3 1 0
github.com/muety/wakapi/services/alias.go:82.60,83.24 1 0
github.com/muety/wakapi/services/alias.go:86.2,88.12 3 0
github.com/muety/wakapi/services/alias.go:83.24,85.3 1 0
github.com/muety/wakapi/services/alias.go:91.69,94.28 3 0
github.com/muety/wakapi/services/alias.go:102.2,104.31 2 0
github.com/muety/wakapi/services/alias.go:108.2,108.12 1 0
github.com/muety/wakapi/services/alias.go:94.28,95.21 1 0
github.com/muety/wakapi/services/alias.go:98.3,99.16 2 0
github.com/muety/wakapi/services/alias.go:95.21,97.4 1 0
github.com/muety/wakapi/services/alias.go:104.31,106.3 1 0
github.com/muety/wakapi/services/alias.go:111.52,112.51 1 0
github.com/muety/wakapi/services/alias.go:112.51,114.3 1 0
github.com/muety/wakapi/services/diagnostics.go:14.101,19.2 1 0
github.com/muety/wakapi/services/diagnostics.go:21.101,23.2 1 0
github.com/muety/wakapi/services/key_value.go:14.89,19.2 1 0
github.com/muety/wakapi/services/key_value.go:21.83,23.2 1 0
github.com/muety/wakapi/services/key_value.go:25.78,27.16 2 0
@ -940,24 +961,3 @@ github.com/muety/wakapi/services/key_value.go:33.2,33.11 1 0
github.com/muety/wakapi/services/key_value.go:27.16,32.3 1 0
github.com/muety/wakapi/services/key_value.go:36.72,38.2 1 0
github.com/muety/wakapi/services/key_value.go:40.60,42.2 1 0
github.com/muety/wakapi/services/misc.go:21.126,28.2 1 0
github.com/muety/wakapi/services/misc.go:40.50,42.48 1 0
github.com/muety/wakapi/services/misc.go:46.2,48.19 3 0
github.com/muety/wakapi/services/misc.go:42.48,44.3 1 0
github.com/muety/wakapi/services/misc.go:51.51,53.16 2 0
github.com/muety/wakapi/services/misc.go:57.2,60.26 3 0
github.com/muety/wakapi/services/misc.go:66.2,68.40 2 0
github.com/muety/wakapi/services/misc.go:73.2,75.33 3 0
github.com/muety/wakapi/services/misc.go:79.2,84.17 2 0
github.com/muety/wakapi/services/misc.go:88.2,91.17 1 0
github.com/muety/wakapi/services/misc.go:95.2,95.12 1 0
github.com/muety/wakapi/services/misc.go:53.16,55.3 1 0
github.com/muety/wakapi/services/misc.go:60.26,65.3 1 0
github.com/muety/wakapi/services/misc.go:68.40,70.3 1 0
github.com/muety/wakapi/services/misc.go:75.33,78.3 2 0
github.com/muety/wakapi/services/misc.go:84.17,86.3 1 0
github.com/muety/wakapi/services/misc.go:91.17,93.3 1 0
github.com/muety/wakapi/services/misc.go:98.116,99.24 1 0
github.com/muety/wakapi/services/misc.go:99.24,100.151 1 0
github.com/muety/wakapi/services/misc.go:100.151,102.4 1 0
github.com/muety/wakapi/services/misc.go:102.9,107.4 1 0

View File

@ -12,6 +12,7 @@ import (
"github.com/muety/wakapi/services"
"github.com/muety/wakapi/utils"
"net/http"
"runtime"
"sort"
"time"
)
@ -34,6 +35,8 @@ const (
DescAdminUserHeartbeats = "Total number of tracked heartbeats by user (all time)."
DescAdminTotalUsers = "Total number of registered users."
DescAdminActiveUsers = "Number of active users."
DescGoroutines = "Total number of running goroutines"
)
type MetricsHandler struct {
@ -208,6 +211,13 @@ func (h *MetricsHandler) getUserMetrics(user *models.User) (*mm.Metrics, error)
})
}
metrics = append(metrics, &mm.CounterMetric{
Name: MetricsPrefix + "_goroutines_total",
Desc: DescGoroutines,
Value: runtime.NumGoroutine(),
Labels: []mm.Label{},
})
return &metrics, nil
}

View File

@ -8,6 +8,7 @@ import (
"github.com/muety/wakapi/utils"
"github.com/patrickmn/go-cache"
"strings"
"sync"
"time"
"github.com/muety/wakapi/models"
@ -16,20 +17,20 @@ import (
type HeartbeatService struct {
config *config.Config
cache *cache.Cache
cache2 *cache.Cache
eventBus *hub.Hub
repository repositories.IHeartbeatRepository
languageMappingSrvc ILanguageMappingService
entityCacheLock *sync.RWMutex
}
func NewHeartbeatService(heartbeatRepo repositories.IHeartbeatRepository, languageMappingService ILanguageMappingService) *HeartbeatService {
srv := &HeartbeatService{
config: config.Get(),
cache: cache.New(24*time.Hour, 24*time.Hour),
cache2: cache.New(cache.NoExpiration, cache.NoExpiration),
eventBus: config.EventBus(),
repository: heartbeatRepo,
languageMappingSrvc: languageMappingService,
entityCacheLock: &sync.RWMutex{},
}
// using event hub is an unnecessary indirection here, however, we might
@ -48,7 +49,7 @@ func NewHeartbeatService(heartbeatRepo repositories.IHeartbeatRepository, langua
}
func (srv *HeartbeatService) Insert(heartbeat *models.Heartbeat) error {
srv.updateEntityUserCacheByHeartbeat(heartbeat)
go srv.updateEntityUserCacheByHeartbeat(heartbeat)
return srv.repository.InsertBatch([]*models.Heartbeat{heartbeat})
}
@ -62,7 +63,7 @@ func (srv *HeartbeatService) InsertBatch(heartbeats []*models.Heartbeat) error {
filteredHeartbeats = append(filteredHeartbeats, hb)
hashes[hb.Hash] = true
}
srv.updateEntityUserCacheByHeartbeat(hb)
go srv.updateEntityUserCacheByHeartbeat(hb)
}
err := srv.repository.InsertBatch(filteredHeartbeats)
@ -147,7 +148,9 @@ func (srv *HeartbeatService) GetFirstByUsers() ([]*models.TimeByUser, error) {
func (srv *HeartbeatService) GetEntitySetByUser(entityType uint8, user *models.User) ([]string, error) {
cacheKey := srv.getEntityUserCacheKey(entityType, user)
if results, found := srv.cache2.Get(cacheKey); found {
if results, found := srv.cache.Get(cacheKey); found {
srv.entityCacheLock.RLock()
defer srv.entityCacheLock.RUnlock()
return utils.SetToStrings(results.(map[string]bool)), nil
}
@ -163,7 +166,7 @@ func (srv *HeartbeatService) GetEntitySetByUser(entityType uint8, user *models.U
}
}
srv.cache2.Set(cacheKey, utils.StringsToSet(filtered), cache.DefaultExpiration)
srv.cache.Set(cacheKey, utils.StringsToSet(filtered), cache.NoExpiration)
return filtered, nil
}
@ -190,21 +193,27 @@ func (srv *HeartbeatService) getEntityUserCacheKey(entityType uint8, user *model
func (srv *HeartbeatService) updateEntityUserCache(entityType uint8, entityKey string, user *models.User) {
cacheKey := srv.getEntityUserCacheKey(entityType, user)
if entities, found := srv.cache2.Get(cacheKey); found {
if _, ok := entities.(map[string]bool)[entityKey]; !ok {
if entities, found := srv.cache.Get(cacheKey); found {
entitySet := entities.(map[string]bool)
srv.entityCacheLock.Lock()
defer srv.entityCacheLock.Unlock()
if _, ok := entitySet[entityKey]; !ok {
entitySet[entityKey] = true
// new project / language / ..., which is not yet present in cache, arrived as part of a heartbeats
// -> invalidate cache
srv.cache2.Delete(cacheKey)
// -> update cache instead of just invalidating it, because rebuilding is expensive here
srv.cache.Set(cacheKey, entitySet, cache.NoExpiration)
}
}
}
func (srv *HeartbeatService) updateEntityUserCacheByHeartbeat(hb *models.Heartbeat) {
srv.updateEntityUserCache(models.SummaryProject, hb.Project, hb.User)
srv.updateEntityUserCache(models.SummaryLanguage, hb.Language, hb.User)
srv.updateEntityUserCache(models.SummaryEditor, hb.Editor, hb.User)
srv.updateEntityUserCache(models.SummaryOS, hb.OperatingSystem, hb.User)
srv.updateEntityUserCache(models.SummaryMachine, hb.Machine, hb.User)
go srv.updateEntityUserCache(models.SummaryProject, hb.Project, hb.User)
go srv.updateEntityUserCache(models.SummaryLanguage, hb.Language, hb.User)
go srv.updateEntityUserCache(models.SummaryEditor, hb.Editor, hb.User)
go srv.updateEntityUserCache(models.SummaryOS, hb.OperatingSystem, hb.User)
go srv.updateEntityUserCache(models.SummaryMachine, hb.Machine, hb.User)
}
func (srv *HeartbeatService) notifyBatch(heartbeats []*models.Heartbeat) {