iCloud同期の進行状況を確認できますか?


14

MacでOS X 10.8を実行して、iCloudリポジトリの内容を表示できるようにセットアップしています~/Library/Mobile Documents(その仕組みの詳細については、この質問この質問を参照してください)。ただし、Macの同期状態を表示/視覚化/理解できるようにしたいと思います。

  • MacはiCloudと同期していますか?
  • そうでない場合、何がアップロード/ダウンロードされているか、どれくらい時間がかかりますか?
  • OS Xのユーティリティや組み込み機能を使用して、これを確認できますか?

これらは、iCloudがファイルシステムに明示的に公開されていなくても有効な質問ですが、iCloudリポジトリに大量のファイルを明示的にコピーしたり、iCloudリポジトリから明示的にコピーしたりする場合に明らかに役立ちます。

回答:


2

アクティビティ

次のコマンドは、モバイルドキュメントをサポートするアプリ(Smultron 4やTextEditなど)でiCloudを操作しながら実行します–

sudo opensnoop -n ubd

–ユビキタスデーモンによって開かれたローカルファイルを表示します。ファイルには、ピアごとに1つのデータベースが含まれます。次のパスのピアごとに1つのディレクトリ:

~/Library/Application Support/Ubiquity

データの種類

進捗を測定する場合は、測定するタイプを決定します。

  • コアデータ
  • 文書
  • Key-Value。

保存、進捗、測定

コアデータ

…ストアファイルではなく、変更ログファイルがiCloudにアップロードされ、ユーザーの他の各デバイスにダウンロードされます。同じiCloudアカウントに接続された別のデバイスから変更ログが届くと、Core Dataは受信した変更ログに基づいて、アプリのSQLiteデータベースのローカルコピーを更新します。iCloudとCore Dataは、各ローカルデータベースが同じ変更セットで更新されるようにします。…

考慮:変更ログの内容を解釈せずに、ログファイルのアップロードの進行状況を測定する価値はありますか?

文書

Mac Developer Libraryで:

…ドキュメントベースのアプリは自動保存を採用でき、そのドキュメントは適切なタイミングで自動的に保存されます…

また:

自動データ保存戦略によりユーザーが安心

…ユーザー関連の変更を保存する必要があるコード内の適切なポイント。これらの変更をディスクに自動的に書き込みます。…

ユーザーデータを自動的に保存できる適切な時期には、次のようなものがあります。

  • ユーザーがアプリウィンドウを閉じたとき、またはアプリを終了したとき(applicationWillTerminate :)
  • アプリが非アクティブ化されたとき(applicationWillResignActive :)
  • ユーザーがアプリを非表示にしたとき(applicationWillHide :)
  • ユーザーがアプリのデータに有効な変更を加えるたびに

最後の項目は、ユーザーのデータをいつでも保存する自由があることを意味します。たとえば、ユーザーがデータレコードのフィールドを編集している場合、各フィールドの値を変更時に保存するか、ユーザーが新しいレコードを表示するときにすべてのフィールドを待機して保存できます。これらのタイプの増分変更を行うと、データは常に最新のものになりますが、データモデルのよりきめ細かい管理も必要になります。…

考慮してください:これらの保存は非常に頻繁であり、量が非常に少ないため、測定する価値はありません。

item-info.db

私はローカルのMacのように見えるピアのデータベースを閲覧するためにSQLite Database Browserをいじりましたitem-info.db。私が疑ったように、アプリが閲覧できるのはシステムがデータベースを使用していない間だけでした。プレビューを使用しUntitled.pngてiCloudで編集してから2秒以内に、データベースを閲覧できなくなりました。

参照資料

iCloud設計ガイド

Macアプリプログラミングガイド:コアアプリの設計:


結構です、ありがとう。あなたが与えるコマンドは、特にユーザーフレンドリーな出力を生成しません(そして、実際には同期/非同期状態、アップロード/ダウンロード状態などに対処しません)が、これまでのところ他のものよりも近いです。
アンドリューフェリエ

ありがとう-理論的には、DTrace iosnoop関連のコマンドなど、DTraceに関連するすべてのコマンドをOS Xで完全に動作させることができます。
グラハムペリン

5

iCloud同期情報を表示するために明示的に設計された組み込みのOS Xツールはありません。

OS X 10.8.2現在、Appleはこの情報を公開していません。AppleがOS Xアプリケーションプログラマインターフェイス(API)を公開して、求めている情報を提供しない限り、サードパーティは同期の詳細を正確に提供できません。

これを踏まえて、AppleのiCloudチームにフィードバックをお願いします。Appleのエンジニアに、あなたが望むものとその理由を知らせてください。

待っている間、AppleのiCloudサーバーへの接続を追跡し、トラフィックフローとディスクアクセスを測定できます。これらのメトリックはある程度の洞察を提供しますが、予想される期間や完全な測定値のパーセンテージを提供しません。

データフローを調べるには、lsofnetstatなどのOS Xの組み込みツールを調べます。


1
答えてくれてありがとう。これが当てはまるかもしれないと推測していましたが、他の誰かがすでにトラフィックフローのリバースエンジニアリングやツールの構築などを行っていたことを望んでいました。
Andrew Ferrier

1

何が起こっているのか本当に知りたい場合は、tcpdump(/ usr / sbin / tcpdump)を使用できます。これはパケットキャプチャを行います。ネットワークを通過するパケットを表示します。最も簡単な方法ではありませんが、このデータを表示する最も包括的な方法です。


どのポートを調べる必要があるか考えていますか?私の推測では、電子メールを含めるには、少なくとも80、443、および5223で、25を追加し、587、および993
マーニックスA.バンAmmers

1

OS X 10.11(10.10ではない場合)の時点で、iCloudでファイルを変更しているときにFinderでiCloudドライブのサブフォルダーを開いており、そのウィンドウのステータスバーがオンになっている場合、Finderにファイルの数が表示されます同期され、これまでに転送されたデータ量。


OSX 10.13.6では、ステータスバーにその情報が表示されません。サイドバーのファインダーのiCloudアイコンの横に小さな円があります。クリックすると、転送中のデータに関する情報を取得できます。
マーニックスA.ヴァンアンマーズ

スクリーンショットを見る-iCloud Driveフォルダーの階層内にあるFinderウィンドウにいる限り、ウィンドウの下部に沿って実行されているステータスバー(hierarchy- /で表示)にiCloudとの同期の進行状況が表示されます。 。
user1134918

画像はコメントに埋め込まれないようですが、i.imgur.com / deKecx9.png
user1134918

0

ターミナルで次を実行すると、私のためのトリックを行うようです:

lsof | grep "Photos Library.photoslibrary/private/com.apple.cloudphotosd/CloudSync.noindex/Engine/filecache"

lsofコマンドの結果は次のとおりです。

cloudd    11237 carl   10r     REG                1,4   3009775 1460206 /Users/carl/Pictures/Photos Library.photoslibrary/private/com.apple.cloudphotosd/CloudSync.noindex/Engine/filecache/AYX/cplAYX8CMwjKIhIUqNRCwXobzKHe9iC.jpeg
cloudd    11237 carl   21r     REG                1,4   2465075 1460208 /Users/carl/Pictures/Photos Library.photoslibrary/private/com.apple.cloudphotosd/CloudSync.noindex/Engine/filecache/ATL/cplATLqV8CAvtA70qoJqZ21PimnEIPe.jpeg

もう一度発行するだけで(上矢印を押してReturnキーを押す)、変更が表示されます。


このコマンドはどこで実行していますか?出力はどのように見えますか?
アンドリューフェリエ

ターミナルから。
biffom

1
〜/ Picturesをcdする必要はありません。なぜパトリックスがそれを編集したのか分かりませんか?
biffom

あなたは正しい、あなたの意図を誤解しています。OTOH、回答を編集してコンテンツを追加できます。2番目のコンテンツを投稿する必要はありません。
nohillside
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.