forgejo/routers/web
wxiaoguang 58dfaf3a75
Improve queue & process & stacktrace ()
Although some features are mixed together in this PR, this PR is not
that large, and these features are all related.

Actually there are more than 70 lines are for a toy "test queue", so
this PR is quite simple.

Major features:

1. Allow site admin to clear a queue (remove all items in a queue)
* Because there is no transaction, the "unique queue" could be corrupted
in rare cases, that's unfixable.
* eg: the item is in the "set" but not in the "list", so the item would
never be able to be pushed into the queue.
* Now site admin could simply clear the queue, then everything becomes
correct, the lost items could be re-pushed into queue by future
operations.
3. Split the "admin/monitor" to separate pages
4. Allow to download diagnosis report
* In history, there were many users reporting that Gitea queue gets
stuck, or Gitea's CPU is 100%
    * With diagnosis report, maintainers could know what happens clearly

The diagnosis report sample:
[gitea-diagnosis-20230510-192913.zip](11441346/gitea-diagnosis-20230510-192913.zip)
, use "go tool pprof profile.dat" to view the report.


Screenshots:


![image](320659b4-2eda-4def-8dc0-5ea08d578063)


![image](c5c46fae-9dc0-44ca-8cd3-57beedc5035e)


![image](6168a811-42a1-4e64-a263-0617a6c8c4fe)

---------

Co-authored-by: Jason Song <i@wolfogre.com>
Co-authored-by: Giteabot <teabot@gitea.io>
2023-05-11 07:45:47 +00:00
..
admin Improve queue & process & stacktrace () 2023-05-11 07:45:47 +00:00
auth Split "modules/context.go" to separate files () 2023-05-08 17:36:54 +08:00
devtest Remove untranslatable on_date key () 2023-04-15 13:01:54 +02:00
events Implement FSFE REUSE for golang files () 2022-11-27 18:20:29 +00:00
explore Sort users and orgs on explore by recency by default () 2023-05-06 22:04:55 +08:00
feed Pass 'not' to commit count () 2023-05-08 07:10:53 +00:00
healthcheck Refactor setting.Database.UseXXX to methods () 2023-03-07 18:51:06 +08:00
misc Refactor "route" related code, fix Safari cookie bug () 2023-04-27 02:06:45 -04:00
org Fix missing badges in org settings page () 2023-05-11 06:56:25 +00:00
repo Reenable creating default webhooks. () 2023-05-11 10:10:57 +08:00
shared Add Gitea Profile Readmes () 2023-05-09 05:57:24 +00:00
user Add Gitea Profile Readmes () 2023-05-09 05:57:24 +00:00
auth.go Implement FSFE REUSE for golang files () 2022-11-27 18:20:29 +00:00
auth_windows.go Implement FSFE REUSE for golang files () 2022-11-27 18:20:29 +00:00
base.go Improve template system and panic recovery () 2023-05-04 14:36:34 +08:00
goget.go refactor some functions to support ctx as first parameter () 2022-12-03 10:48:26 +08:00
home.go Refactor cookie () 2023-04-13 15:45:33 -04:00
metrics.go Implement FSFE REUSE for golang files () 2022-11-27 18:20:29 +00:00
nodeinfo.go Implement FSFE REUSE for golang files () 2022-11-27 18:20:29 +00:00
swagger_json.go Group template helper functions, remove Printf, improve template error messages () 2023-04-08 21:15:22 +08:00
web.go Improve queue & process & stacktrace () 2023-05-11 07:45:47 +00:00
webfinger.go Use User.ID instead of User.Name in ActivityPub API for Person IRI () 2023-04-04 10:08:23 +08:00