mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 08:47:12 +03:00
rage: do not report 'serve' commands in sigtrace section
Summary: There were some rage pastes that have very long "sigtrace" section (ex. P141069793) It turns out the sigtrace has lots of "serve" commands that is started in a non-forking mode, producing very long traces like: Tracing Data: Process 726702 Thread 2610476: Start Dur.ms | Name Source 0 ... | Run Command hgcommands::run line 296 | - pid = 726702 : | - uid = 117869 : | - nice = 0 : | - args = ["/opt/fb/mercurial/hg.real","... : | - parent_pids = [2610476,1] : | - parent_names = ["/opt/fb/mercurial/hg.real",""] : | - exit_code = 0 : | - max_rss = 0 : 35 ... | Main Python Command (perftrace) 35 +22 \ Repo Setup edenscm.mercurial.hg line 168 | - local = true : 70 +802 \ Main Python Command (perftrace) 72 +799 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 74 +537 | Get EdenFS Status (perftrace) | - status = true : 940 +914 \ Main Python Command (perftrace) 943 +910 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 943 +617 | Get EdenFS Status (perftrace) | - status = true : 1875 +866 \ Main Python Command (perftrace) 1877 +863 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 1878 +604 | Get EdenFS Status (perftrace) | - status = true : 2759 +2208 \ Main Python Command (719 times) (perftrace) 3155 +860 \ Main Python Command (perftrace) 3158 +856 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 3158 +543 | Get EdenFS Status (perftrace) | - status = true : 4068 +883 \ Main Python Command (perftrace) 4071 +879 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 4071 +591 | Get EdenFS Status (perftrace) | - status = true : 4967 +913 \ Main Python Command (perftrace) 4969 +910 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 4969 +621 | Get EdenFS Status (perftrace) | - status = true : 6630 +922 \ Main Python Command (perftrace) 6633 +918 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 6633 +640 | Get EdenFS Status (perftrace) | - status = true : 7615 +856 \ Main Python Command (perftrace) 7622 +849 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 7622 +581 | Get EdenFS Status (perftrace) | - status = true : 8487 +951 \ Main Python Command (perftrace) 8490 +947 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 8490 +671 | Get EdenFS Status (perftrace) | - status = true : 139275 +794 \ Main Python Command (perftrace) 139278 +790 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 139278 +539 | Get EdenFS Status (perftrace) | - status = true : 140132 +837 \ Main Python Command (perftrace) 140135 +832 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 140135 +544 | Get EdenFS Status (perftrace) | - status = true : 140992 +814 \ Main Python Command (perftrace) 140994 +811 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 140994 +546 | Get EdenFS Status (perftrace) | - status = true : 306862 +864 \ Main Python Command (perftrace) 306865 +860 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 306865 +586 | Get EdenFS Status (perftrace) | - status = true : 307801 +858 \ Main Python Command (perftrace) 307804 +854 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 307804 +587 | Get EdenFS Status (perftrace) | - status = true : 308690 +874 \ Main Python Command (perftrace) 308693 +869 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 308693 +610 | Get EdenFS Status (perftrace) | - status = true : 506391 +924 \ Main Python Command (perftrace) 506396 +917 | Status edenscm.mercurial.dirstate line 957 | - A/M/R Files = 0 : 506396 +645 | Get EdenFS Status (perftrace) | - status = true : 507401 +898 \ Main Python Command (perftrace) .... Our chg usage does not start non-forking servers, those are started by apparently something related to emacs: args = ['--config', 'ui.interactive=True', '--config', 'ui.editor=emacsclient', '--config', 'extensions.shelve=', 'serve', '--cmdserver', ...] Hide them in sigtrace to make rage paste shorter. Reviewed By: DurhamG Differential Revision: D23459991 fbshipit-source-id: 7ccc27dbe5ef03e0b97dbfec57213e5478003b1c
This commit is contained in:
parent
5f0a6f35af
commit
afa787bd5c
@ -238,6 +238,10 @@ def readsigtraces(repo):
|
||||
names.sort(key=lambda name: -vfs.stat("sigtrace/%s" % name).st_mtime)
|
||||
result = ""
|
||||
for name in names:
|
||||
# hg serve (non-forking commandserver) is used by emacsclient and
|
||||
# can produce very long but boring traces. Skip them.
|
||||
if "serve" in name:
|
||||
continue
|
||||
content = pycompat.decodeutf8(
|
||||
vfs.tryread("sigtrace/%s" % name), errors="replace"
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user