Mike McLaughlin [Fri, 14 Jun 2019 23:14:55 +0000 (16:14 -0700)]
Merge remote-tracking branch 'origin/release/3.0' into release/3.0
Mike McLaughlin [Fri, 14 Jun 2019 23:14:27 +0000 (16:14 -0700)]
Merge remote-tracking branch 'upstream/release/3.0' into release/3.0
Mike McLaughlin [Fri, 14 Jun 2019 20:03:28 +0000 (13:03 -0700)]
Update to Preview 6 version: 1.0.4-preview6.19311.1 (#336)
Mike McLaughlin [Fri, 14 Jun 2019 20:02:41 +0000 (13:02 -0700)]
Update to Preview 6 version: 1.0.4-preview6.19311.1
Mike McLaughlin [Wed, 12 Jun 2019 00:15:26 +0000 (17:15 -0700)]
Merge remote-tracking branch 'origin/release/3.0' into release/3.0
Mike McLaughlin [Wed, 12 Jun 2019 00:13:37 +0000 (17:13 -0700)]
Merge pull request #328 from mikem8361/release/3.0
Preview 6 snapshot
Mike McLaughlin [Tue, 11 Jun 2019 23:02:07 +0000 (16:02 -0700)]
Merge remote-tracking branch 'upstream/master' into release/3.0
Mike McLaughlin [Tue, 11 Jun 2019 22:26:21 +0000 (15:26 -0700)]
Merge remote-tracking branch 'origin/master' into release/3.0
Mike McLaughlin [Tue, 11 Jun 2019 20:59:10 +0000 (13:59 -0700)]
Fix dotnet-dump when running on preview 6 (#326)
Fix dotnet-dump when running on preview 6
When the 3.0 preview 6 runtime is the only one available, it causes
dotnet-dump to throw a missing method exception. This is because it
tries to load the wrong SOS.NETCore.dll assembly from the runtime
directory instead of the one that comes with dotnet-dump/SOS.
The workaround is to change the SOS.NETCore assembly version
to 4.8.0.x which is greater than the 4.7.x version of the
preview 6 runtime.
Fix scheduled build that only has 3.0.x installed
Sung Yoon Whang [Tue, 11 Jun 2019 04:45:16 +0000 (21:45 -0700)]
Clear out correct length for counter value (#320)
Mike McLaughlin [Tue, 11 Jun 2019 00:59:13 +0000 (17:59 -0700)]
Update Documents (#323)
Update documents
Remove Release notes on main README, add notes to dotnet-dump instructions, update coredump debugging instructions and add FAQ.
Mike McLaughlin [Tue, 11 Jun 2019 00:11:26 +0000 (17:11 -0700)]
Convert to latest arcade version (#319)
Convert to latest arcade version
Update signing step
Fix variable list definition
Enable microbuild
Add sdk version to global.json
Update dotnet-install.sh permissions.
Sung Yoon Whang [Wed, 5 Jun 2019 23:41:15 +0000 (16:41 -0700)]
Do not print elevated processes' FileName (#312)
* Do not print path to the process if it is elevated
* Fix it for dotnet-trace too
* Change the display msg for elevated process
Sung Yoon Whang [Wed, 5 Jun 2019 23:00:35 +0000 (16:00 -0700)]
Update dotnet-trace documentation (#310)
* Adding a section on how to view the trace
* some more stuff
Sung Yoon Whang [Wed, 5 Jun 2019 18:46:03 +0000 (11:46 -0700)]
Add new counters to list (#309)
* Add new counters to list
* Fix typo / add unit to AllocRate
Sung Yoon Whang [Tue, 4 Jun 2019 22:58:44 +0000 (15:58 -0700)]
Offer visual cues for monitor status (#301)
* Offer visual cues for monitor status
* Offer visual cue when user specifies a nonexistent EventSource
* Change the initial message to something more helpful than 'Running'
Sung Yoon Whang [Tue, 4 Jun 2019 21:48:55 +0000 (14:48 -0700)]
Fix a case where we have a leftover pipe from a process that is not running anymore (#308)
Andrew Au [Mon, 3 Jun 2019 16:27:58 +0000 (09:27 -0700)]
Make sure we have the right exit code for dotnet-trace collect
Sung Yoon Whang [Mon, 3 Jun 2019 05:17:08 +0000 (22:17 -0700)]
Fix regression introduced by PR #299 (#302)
Sung Yoon Whang [Sun, 2 Jun 2019 23:49:07 +0000 (16:49 -0700)]
Do not display exception on graceful exit case (#300)
* Do not display exception on graceful exit case
* Use Debug.WriteLine instead of removing
Sung Yoon Whang [Sun, 2 Jun 2019 23:17:51 +0000 (16:17 -0700)]
Display unknown EventSource's provider name properly (#299)
Stephen Toub [Fri, 31 May 2019 22:11:23 +0000 (18:11 -0400)]
Improve perf of `!dumpasync -tasks` (#294)
When the `-tasks` flag is set, we look at every object on the heap and walk its hierarchy to decide if it's a task or a task-derived type. But we currently do that by comparing the name of every object against "System.Threading.Tasks.Task", which is very expensive. This switches to comparing by module and type def. On my machine, a `!dumpasync -tasks` command that previously took ~1 minute now takes ~30 seconds.
Stephen Toub [Fri, 31 May 2019 22:06:13 +0000 (18:06 -0400)]
Improve perf of `!threadpool -wi` (#295)
The -wi feature added recently walks every item on the heap looking for thread pool queues. It currently does this by comparing object names, but it's much faster to compare module and type def. On my machine on an ~1GB dump, this improved execution time ~20x, from 2:15 to 0:07.
Andrew Au [Thu, 30 May 2019 18:52:30 +0000 (11:52 -0700)]
Exception in dotnet-counter does not crash the app
Matt Galbraith [Thu, 30 May 2019 20:58:02 +0000 (13:58 -0700)]
Merge pull request #292 from dotnet/MattGal-patch-1
Move CI build to Hosted Ubuntu 1604
Juan Hoyos [Thu, 30 May 2019 20:14:26 +0000 (13:14 -0700)]
Update .vsts-dotnet-ci.yml
Juan Hoyos [Thu, 30 May 2019 20:12:48 +0000 (13:12 -0700)]
Change queues for official builds
Juan Hoyos [Thu, 30 May 2019 20:04:37 +0000 (13:04 -0700)]
Remove demands on the agent OS
Matt Galbraith [Thu, 30 May 2019 17:18:39 +0000 (10:18 -0700)]
Move CI build to Hosted Ubuntu 1604
John Salem [Thu, 30 May 2019 17:13:11 +0000 (10:13 -0700)]
Ipc spec update (#290)
* create section headers
* Add profiler and dump documentation
* change pipe name in spec to dotnet
Andrew Au [Thu, 30 May 2019 00:26:49 +0000 (17:26 -0700)]
Do not swallow exception and stuck in case we have an exception thrown during tracing
Felipe Pessoto [Thu, 23 May 2019 13:35:45 +0000 (10:35 -0300)]
Missing profile argument
The providers help mention profile, but it is not in the docs.
I took the profile description from https://github.com/dotnet/diagnostics/blob/master/documentation/design-docs/dotnet-tools.md
But I'm not sure if we should keep the information in both places
It also refers to some profiles not available in the current release 1.0.3-preview5.19251.2. The only profile in this version is runtime-basic
Stephen Toub [Sun, 26 May 2019 02:15:01 +0000 (22:15 -0400)]
Two changes to !dumpasync (#286)
* Display state machine fields in DumpAsync for -stacks
Currently the DumpAsync -fields option just impacts whether the state machine fields are output for the top-level state machines. We received feedback that it would be more expected for -fields to also cause the fields to be output for all state machines listed as part of continuation chains. This does that.
* Improve performance of !dumpasync SOS command
A significant majority of the time spent in dumpasync was in getting the type name of each object in order to compare it to "AsyncStateMachineBox". This switches to comparing by module and mdTypeDef. On an ~1GB dump, the time to execute !dumpasync dropped from 43 to 11 seconds on my machine.
John Salem [Fri, 24 May 2019 04:10:11 +0000 (21:10 -0700)]
Add Diagnostic Ipc client (#271)
* * Add infrastructure for a new IPC client in line with the propsed spec
* update EventPipeClient to use new IpcClient
* Update DiagnosticHelpers to use IpcClient
* * fix typo
* change to use uint32 instead of INT for generate core dump command
* * remove dead code
* * bring error codes in line with the now checked0in spec
* Remove extra error code
* Rename Miscellaneous to Dump for command sets and Ids
* fix typing issue
* * update profiler attach to use IpcClient
* * Change errors to be int32 HRESULTS
* * remove unnecessary todo
* simplify size checking
* * add ASSERT that MAGIC is always the correct length
* * Fix using statement
Felipe Pessoto [Thu, 23 May 2019 17:03:45 +0000 (14:03 -0300)]
Update dotnet-counters link to docs (#281)
David Mason [Thu, 23 May 2019 08:00:38 +0000 (01:00 -0700)]
Merge pull request #274 from davmason/profiler_attach
Add profiler attach message
David Mason [Wed, 22 May 2019 20:16:55 +0000 (13:16 -0700)]
Add comment about timeout
John Salem [Wed, 22 May 2019 19:54:44 +0000 (12:54 -0700)]
IPC protocol spec (#198)
* Add initial draft of ipc protocol spec
* Update IPC spec to account for feedback:
* add clarity about what needs to be wrapped in a header
* add image representing communication flow
* flesh out packet headers
* fix image rendering
* Remove TODOs
* Rewrite overview and add transport description.
* * update spec to account for feedback
* formalize terminology
* update diagrams to account for new terminology
* update header size
* * Add notes on pipe and socket naming conventions
* * expand error section and define error codes
* simplify description of optional continuation
* clarify terminology w.r.t. Commands and Command specific things
* explicitly write out current set of command_sets and command_ids
* * update EventPipe payload example to be reality
* fix comments
* Update transport name with explicit sprintf codes
* * Document current workings of EventPipe Commands
* specify IpcHeader.magic as uint8_t instead of ambiguous char
* * increase detail of eventpipe commands
* expand on and streamline the error model
* remove hypotheticals
* correct bug in example messages
* * changes in response to feedback
* add notes about MacOS App Group case
David Mason [Wed, 22 May 2019 10:29:46 +0000 (03:29 -0700)]
Update message ID
Mike McLaughlin [Wed, 22 May 2019 00:36:17 +0000 (17:36 -0700)]
Windows arm32 and Linux arm/arm64 support (#276)
Fix issue: https://github.com/dotnet/diagnostics/issues/242
Update command include files from coreclr to fix arm build problems.
Add warning headers to common includes: issue https://github.com/dotnet/diagnostics/issues/38
Added calling dbgeng DAC IOCTL fallback so ".cordll" works.
Added host runtime directory to diasymreader search.
Remove installing sudo on 18.04 docker images (docker-init.sh).
Mike McLaughlin [Tue, 21 May 2019 03:03:45 +0000 (20:03 -0700)]
Change the dotnet-dump setthread command to take the thread index (#275)
Mike McLaughlin [Mon, 20 May 2019 22:08:23 +0000 (15:08 -0700)]
Update System.CommandLine for dotnet-dump (#270)
Update System.CommandLine for dotnet-dump
Update System.CommandLine to 0.2.0-alpha.19254.1.
Fixes issues: https://github.com/dotnet/diagnostics/issues/127 https://github.com/dotnet/diagnostics/issues/234
Remove the separate older System.CommandLine version for the Repl. Replaced
the depreciated MethodBinder usage with explicit reflection invoke.
Added the CommandInvoke and HelpInvoke attributes to mark the entry
points into the command class.
Changed the command invoke from async (Task InvokeAsync) to synchronous
(void Invoke) because SOS and CLRMD are basically single threaded.
Allow the screen width for the repl console to change dynamically.
David Mason [Thu, 16 May 2019 22:12:40 +0000 (15:12 -0700)]
add profiler attach message
Sung Yoon Whang [Fri, 17 May 2019 00:27:24 +0000 (17:27 -0700)]
Add list-processes command to dotnet-counters (#243)
* Add list-processes command
* addressing some pr feedback related to system.commandline
Mike McLaughlin [Thu, 16 May 2019 00:10:53 +0000 (17:10 -0700)]
Add alpine/MUSL SOS build/packaging (#264)
Build on alpine docker container.
Add new MUSL SOS binaries to dotnet-dump/dotnet-sos.
Add new "linux-musl-x64" rid to SOS installer and
dotnet-dump.
Skip the "clrstack -i" tests that fail on alpine and 3.0.x.
Jan Vorlicek [Wed, 15 May 2019 17:55:18 +0000 (10:55 -0700)]
Enable build for arm / arm64 (#268)
Enable build for arm / arm64
Mario Hewardt [Wed, 15 May 2019 17:20:20 +0000 (10:20 -0700)]
Merge pull request #269 from MarioHewardt/master
fixed hung app markdown
Mario Hewardt [Wed, 15 May 2019 17:17:20 +0000 (10:17 -0700)]
fixed hung app markdown
Mario Hewardt [Wed, 15 May 2019 17:14:24 +0000 (10:14 -0700)]
Merge pull request #267 from MarioHewardt/master
Added new hang scenario
Mario Hewardt [Wed, 15 May 2019 00:44:41 +0000 (17:44 -0700)]
Added new hang scenario
Noah Falk [Fri, 10 May 2019 22:02:01 +0000 (15:02 -0700)]
Merge pull request #262 from MarioHewardt/master
New tutorial scenario
Mario Hewardt [Fri, 10 May 2019 18:36:17 +0000 (11:36 -0700)]
pr feedback
Sung Yoon Whang [Fri, 10 May 2019 00:24:20 +0000 (17:24 -0700)]
Filter event counter payloads using CounterType payload (#261)
Mario Hewardt [Thu, 9 May 2019 21:16:55 +0000 (14:16 -0700)]
added intermittent mem spike endpoint
Mario Hewardt [Thu, 9 May 2019 20:46:43 +0000 (13:46 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 20:31:24 +0000 (13:31 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 18:48:25 +0000 (11:48 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 18:46:13 +0000 (11:46 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 18:44:35 +0000 (11:44 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 18:36:04 +0000 (11:36 -0700)]
Update intermittent_memory_spike.md
Juan Hoyos [Thu, 9 May 2019 16:51:40 +0000 (09:51 -0700)]
Make SOS packing dependencies invisible in VS's solution viewer (#259)
Mario Hewardt [Thu, 9 May 2019 16:13:35 +0000 (09:13 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 16:00:57 +0000 (09:00 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 15:55:06 +0000 (08:55 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 15:54:43 +0000 (08:54 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 15:53:29 +0000 (08:53 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Thu, 9 May 2019 15:45:03 +0000 (08:45 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Wed, 8 May 2019 23:58:13 +0000 (16:58 -0700)]
Update intermittent_memory_spike.md
Mike McLaughlin [Wed, 8 May 2019 21:45:33 +0000 (14:45 -0700)]
Change the GenerateCoreDump protocol to use UTF16 dump file name (#258)
Mike McLaughlin [Wed, 8 May 2019 16:41:34 +0000 (09:41 -0700)]
Download and register DAC with CLRMD (#248)
Issue https://github.com/dotnet/diagnostics/issues/158
Add SOSInitializeByHost SOS module entry so the SOSHost
code can pass the temp dir created, DAC module path downloaded for
clrmd and the symbol store enabled flag.
Removed ISOSHostServices and replaced initializing the SOSNetCoreCallbacks
initialization as part of the call to SOSInitializeByHost.
Added the "clrmodules" command as a test of a pure CLRMD command and
as place to add the module version requested by some customers.
Catch the DllNotFoundException exception and add "try installing libc6-dev"
to exception message and documentation to work around Microsoft stretch docker
image problems.
Issue: https://github.com/dotnet/diagnostics/issues/201
Mike McLaughlin [Wed, 8 May 2019 07:47:28 +0000 (00:47 -0700)]
Generate core dump diagnostic server command (#257)
Generate core dump diagnostic server command
Add DiagnosticHelpers class with the GenerateCoreDump API.
Change dotnet-dump collect on Linux to use this new API.
Update dotnet-dump collect doc. Remove sudo.
Sung Yoon Whang [Tue, 7 May 2019 21:58:42 +0000 (14:58 -0700)]
Make dotnet-counters exit gracefully on runtime shutdown
Mario Hewardt [Wed, 8 May 2019 00:08:29 +0000 (17:08 -0700)]
Update README.md
Mario Hewardt [Wed, 8 May 2019 00:07:52 +0000 (17:07 -0700)]
Update README.md
Mario Hewardt [Wed, 8 May 2019 00:05:17 +0000 (17:05 -0700)]
Update README.md
Mario Hewardt [Wed, 8 May 2019 00:03:05 +0000 (17:03 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Wed, 8 May 2019 00:02:37 +0000 (17:02 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Wed, 8 May 2019 00:00:24 +0000 (17:00 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Tue, 7 May 2019 23:09:05 +0000 (16:09 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Tue, 7 May 2019 23:02:23 +0000 (16:02 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Tue, 7 May 2019 22:56:15 +0000 (15:56 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Tue, 7 May 2019 22:20:43 +0000 (15:20 -0700)]
Update intermittent_memory_spike.md
Mario Hewardt [Tue, 7 May 2019 22:10:23 +0000 (15:10 -0700)]
initial add
Sung Yoon Whang [Mon, 6 May 2019 22:28:04 +0000 (15:28 -0700)]
[dotnet-counters] Make refresh-interval optional (#253)
* --refresh-interval is now optional
* Make the default refresh-interval 1
Juan Hoyos [Mon, 6 May 2019 20:32:47 +0000 (13:32 -0700)]
Restore commit information to native images (#250)
Andrew Au [Mon, 6 May 2019 18:01:28 +0000 (11:01 -0700)]
Terminate dotnet-trace when the runtime closes the eventpipe
Sung Yoon Whang [Mon, 6 May 2019 08:06:41 +0000 (01:06 -0700)]
Fix a small typo in memory leak tutorial (#249)
Juan Hoyos [Sat, 4 May 2019 21:31:32 +0000 (14:31 -0700)]
Overall cleanup for build system - part 1 (#247)
* Remove dotnet-analyze from build and CreateVersionFile
* Rename NuGet config file to be compliant with casing
* Use msbuild command in place of hardcoded paths
* Add details file
* Consolidate versions into a single file
* Over all cleanup of project files, properties, and targets
* Little workaround for older version of Arcade around license
* Change format of versioning resources for readability
* Update XUnit versions
Noah Falk [Fri, 3 May 2019 01:09:16 +0000 (18:09 -0700)]
Merge pull request #245 from MarioHewardt/master
Initial scenario based tutorial
Mario Hewardt [Fri, 3 May 2019 01:05:49 +0000 (18:05 -0700)]
fix pr feedback
Sung Yoon Whang [Fri, 3 May 2019 00:47:01 +0000 (17:47 -0700)]
Moving counters doc to where all other documentations live (#246)
Mario Hewardt [Thu, 2 May 2019 23:52:17 +0000 (16:52 -0700)]
Initial scenario based tutorial
Sung Yoon Whang [Thu, 2 May 2019 23:30:50 +0000 (16:30 -0700)]
Update installation instruction for dotnet-counters for P5 (#244)
Sung Yoon Whang [Wed, 1 May 2019 23:07:10 +0000 (16:07 -0700)]
Dotnet counters doc (#219)
* some documentation updates to dotnet-counters
* Readme under dotnet-counters directory
* some cleanup
* Adding example for filtering'
* fix list cmd
* Adding some more description in example usage per PR feedback
* PR feedback
* Give some example counters to intro section
* Some syntax fix
* Add dotnet-counters doc to main README
Mike McLaughlin [Wed, 1 May 2019 21:54:52 +0000 (14:54 -0700)]
Fix missing metadata in Linux core dumps. (#229)
* Fix missing metadata in Linux core dumps.
Issue #https://github.com/dotnet/diagnostics/issues/56
Both Windows and Linux minidumps don't save all the assemblies' metadata which can cause
stack traces to display !Unknown. On Windows most debuggers like Windbg and VS can load
the module from file for this kind of dumps. On Linux lldb/SOS doesn't load the native
modules and really doesn't know anything about the managed assemblies.
Add metadata callback to datatarget and it's implementation in SOS.NETCore.
Add IsMetadataMemory() and the metadata region list. This is because lldb on core dumps
returns 0's on missing metadata memory reads instead of an error.
Juan Hoyos [Wed, 1 May 2019 16:24:53 +0000 (09:24 -0700)]
Merge pull request #236 from dotnet/juhoyosa/rollforward-major
Add runtime config template for major rollforward
Mike McLaughlin [Wed, 1 May 2019 05:35:45 +0000 (22:35 -0700)]
Update docs for preview 5. (#238) (#239)
Update the tools version to 1.0.3-preview5.19251.2.
Mike McLaughlin [Wed, 1 May 2019 05:29:12 +0000 (22:29 -0700)]
Update docs for preview 5. (#238)
Update the tools version to 1.0.3-preview5.19251.2.
Juan Hoyos [Wed, 1 May 2019 01:29:58 +0000 (18:29 -0700)]
Merge pull request #237 from dotnet/juhoyosa/rollforward-release
Roll forward on major version
Juan Hoyos [Tue, 30 Apr 2019 23:33:23 +0000 (16:33 -0700)]
Roll forward on major version