Skip to content

Instrument fork admission timing#295

Draft
sjmiller609 wants to merge 1 commit into
mainfrom
hypeship/fork-admission-tracing
Draft

Instrument fork admission timing#295
sjmiller609 wants to merge 1 commit into
mainfrom
hypeship/fork-admission-tracing

Conversation

@sjmiller609

Copy link
Copy Markdown
Collaborator

Summary

Adds targeted tracing around fork admission so parallel fanout traces can show where time is spent before restore:

  • traces metadata exact-name scans with file/scanned counts and static caller labels
  • traces fork metadata save, lock wait, and lock hold time
  • traces snapshot memory readiness and guest directory clone work for fork/snapshot paths
  • applies the metadata name-exists tracing to snapshot fork name checks too

The spans intentionally avoid recording requested instance names.

Testing

  • go test ./lib/instances -run 'TestForkInstanceFromStandby|TestForkInstanceFromStopped|TestGetInstance|TestListInstances|TestSnapshot' -count=1\n- go test ./lib/instances -run 'TestSaveForkMetadataSerializesNameAdmission|TestForkInstanceRejectsDuplicateNameForNonNetworkedSource|TestForkInstanceFromStandbyCancelsCompressionJobAndCopiesRawMemory|TestForkSnapshotFromCompressedSourceCopiesRawMemory' -count=1\n- go test ./lib/network -count=1\n\nNote: I did not run the full go test ./lib/instances package to completion locally; it entered longer integration-style tests, so I used the focused fork/query coverage above for this instrumentation-only patch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant