Silencing OS subsystem signposts on iOS

Environment Context:

  • iOS 17.0 Simulator
  • Xcode 15.0

In the above environment, I'm noticing in Instruments that the OS subsystem com.apple.VectorKit is emitting os_signpost events at a rate of ~2.8 events/ms.

This large amount of data logging seems to be triggering warnings of:

'Data stream: 1 log/signpost messages lost due to high rates'

...when trying to capture other system logging data. (In the attached screenshot, notice the warning sign icons right outside the selected time series.)

This is preventing me from being able to successfully log my own signpost data and profile my application.

As well, this subsystem's data is unnecessary for my purposes and distracting.

I have tried to disable logging for this subsystem in the Simulator by running the following from the macOS host:

% xcrun simctl spawn booted log config --subsystem com.apple.VectorKit --mode level:off

...and confirmed it with:

% xcrun simctl spawn booted log config --subsystem com.apple.VectorKit --status
Mode for 'com.apple.VectorKit'  OFF PERSIST_OFF

...however, when running Instruments after the above output, this data does not actually get disabled.

How can I disable this subsystem's logging?

Feedback Assistant report: FB13292000

Replies

Does this happen on a real device?

Did this change with iOS 17? Or do you see the same behaviour in the iOS 16 simulator?

Are these sign posts coming from within your process? Or from another system process?


Feedback Assistant report: FB13292000

Thanks, but…

I took a look at your bug report and it’s pretty much a recap of what you posted here. I suspect you’ll have more luck if you include more info, like:

  • Answers to questions like the ones I posed above

  • Steps to reproduce

  • If that involves running an app, a cut down test project

  • A sysdiagnose log that shows the issue

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"