InstrumentsはXcodeに同梱されているメモリ使用状況などの記録、ビジュアル化を行うツールで、アクティビティモニタの強化版といったものです。
監視対象のモジュール(Instruments)を選択してドキュメント上に配置し、監視対象プロセスを選択して記録すると、動作中のプロセスの各種リソース使用状況がわかります。
そのInstrumentsがAppleScriptに対応している(sdefを持っている)ことがわかりました(調べたことがなかった)。
Dock上でXcodeのサブメニューから起動が可能です。
▲macOS 10.14.6上で動作するInstruments version 11.3.1。バージョン番号はインストールされているXcodeと同じものを名乗っているもよう
Instrumentsを使って開発中のアプリケーションのメモリ使用状況を記録して可視化(グラフを眺めるぐらい?)してみると、ダラダラ長時間記録するよりも、目的の箇所で記録を行なったほうが使い勝手がよく、Instrumentで記録した書類が複数できてきます。
それらを選択してオープンするのに、Instruments書類(単なるログ?)はファイルサイズが巨大。これをオープンするとけっこうな処理時間がかかります。Scriptから操作できたほうがよさそうだと考えて、冗談半分でAS対応していないか調べたところ、対応していると出ました。
InstrumentsのAppleScript用語辞書の内容を見てみると、ファイルのオープン/クローズができる程度で、他に何ができるというわけでもありません。
Documentの新規作成ぐらいはできそうですが、試してみたところクラッシュします。新規作成時に、どのリソースを監視するかというモジュール(Instruments)を指定する必要があるので、ドキュメント作成時にこのInstrumentsを指定できないあたりでGUI側との機能の不一致が起こっているのでしょう。
また、ドキュメントを新規作成したあとで、個別にInstrumentsを追加できるコマンドも必要になっていくことでしょう。
AppleScript名:指定書類をオープン |
— – Created by: Takaaki Naganoya – Created on: 2020/05/19 — – Copyright © 2020 Piyomaru Software, All Rights Reserved — set aFile to choose file with timeout of 3600 seconds tell application "Instruments" open aFile end tell end timeout |
AppleScript名:最前面のドキュメントから情報を取得 |
— – Created by: Takaaki Naganoya – Created on: 2020/05/19 — – Copyright © 2020 Piyomaru Software, All Rights Reserved — tell application "Instruments" tell front document properties –> {file:file "Cherry:Users:me:Documents:Instruments_withoutRetina.trace:", modified:false, name:"Instruments_withoutRetina.trace", class:document} end tell end tell |
AppleScript名:新規書類作成(クラッシュ) |
— – Created by: Takaaki Naganoya – Created on: 2020/05/19 — – Copyright © 2020 Piyomaru Software, All Rights Reserved — tell application "Instruments" make new document –This command cause crash end tell |