iCloud 동기화 진행 상황을 관찰 할 수 있습니까?


14

Mac에서 OS X 10.8을 실행하고 iCloud 저장소의 내용을 볼 수 있도록 Mac을 설정했습니다 ~/Library/Mobile Documents( 작동 방법에 대한 자세한 내용 은 이 질문이 질문 참조 ). 그러나 Mac의 동기화 상태를 보거나 시각화 / 이해할 수 있기를 원합니다.

  • Mac이 iCloud와 동기화되어 있습니까?
  • 그렇지 않은 경우 업로드 / 다운로드 / 얼마나 오래 걸립니까?
  • 내가 볼 수있는 OS X의 유틸리티 나 내장 기능이 있습니까?

이는 iCloud가 파일 시스템에 명시 적으로 노출되지 않은 경우에도 유효한 질문이지만 iCloud 저장소 안팎으로 대량의 파일을 명시 적으로 복사하는 경우 더욱 유용합니다.

답변:


2

활동

다음 명령은 모바일 문서를 지원하는 앱 (Smultron 4 및 TextEdit 등)을 사용하여 iCloud에서 작업하는 동안 실행됩니다.

sudo opensnoop -n ubd

– 유비 쿼티 데몬이 연 로컬 파일을 보여줍니다. 파일에는 데이터베이스, 피어 당 하나의 데이터베이스가 포함됩니다. 다음 경로에서 피어 당 하나의 디렉토리 :

~/Library/Application Support/Ubiquity

데이터 유형

진행 상황을 측정하려면 측정 할 유형을 결정하십시오.

  • 핵심 데이터
  • 서류
  • 핵심 가치.

저장, 진행 및 측정

핵심 데이터

… 저장 파일이 아닌 변경 로그 파일은 iCloud에 업로드되고 각 사용자의 다른 장비로 다운로드됩니다. 동일한 iCloud 계정에 연결된 다른 기기에서 변경 로그가 도착하면 Core Data는 수신 된 변경 로그를 기반으로 앱의 로컬 SQLite 데이터베이스 복사본을 업데이트합니다. iCloud와 Core Data는 각 로컬 데이터베이스가 동일한 변경 세트로 업데이트되도록합니다. …

변경 로그 내용 을 해석하지 않고 로그 파일 업로드 진행률을 측정하는 것이 가치가 있습니까?

서류

Mac 개발자 라이브러리에서 :

… 문서 기반 앱은 자동 저장 기능을 채택 할 수 있으며 문서는 적절한 시간에 자동 저장됩니다.

또한:

자동 데이터 저장 전략으로 사용자 완화

… 사용자 관련 변경 사항을 저장하고 해당 변경 사항을 디스크에 자동으로 기록해야하는 적절한 코드 포인트. …

사용자 데이터를 자동으로 저장할 수있는 적절한 시간에는 다음이 포함됩니다.

  • 사용자가 앱 창을 닫거나 앱을 종료하면 (applicationWillTerminate :)
  • 앱이 비활성화 된 경우 (applicationWillResignActive :)
  • 사용자가 앱을 숨길 때 (applicationWillHide :)
  • 사용자가 앱의 데이터를 올바르게 변경할 때마다

마지막 항목은 언제든지 사용자 데이터를 자유롭게 저장할 수 있음을 의미합니다. 예를 들어, 사용자가 데이터 레코드의 필드를 편집하는 경우 각 필드 값이 변경 될 때마다 저장하거나 사용자가 새 레코드를 표시 할 때 모든 필드를 기다렸다가 저장할 수 있습니다. 이러한 유형의 증분 변경을 수행하면 데이터가 항상 최신 상태로 유지되지만 데이터 모델을보다 세밀하게 관리해야합니다. …

고려할 사항 : 저축이 너무 빈번하고 양이 너무 적 으면 측정 할 가치가 없습니다.

item-info.db

나는 장난 삼아 생각해 SQLite 데이터베이스 브라우저 찾아보기 위해 item-info.db내 로컬 맥 것으로 보인다 피어에 대한 데이터베이스를. 의심 한 것처럼, 시스템이 데이터베이스를 사용하지 않는 동안에 만 앱을 탐색 할 수있었습니다 Untitled.png. iCloud에서 미리보기를 사용하여 iCloud에서 편집 한 후 2 초 내에 더 이상 데이터베이스를 탐색 할 수 없었습니다.

참고 문헌

iCloud 디자인 안내서

Mac 앱 프로그래밍 안내서 : 핵심 앱 디자인 :


고마워요. 당신이 제공하는 명령은 특히 사용자 친화적 인 출력을 생성하지 않으며 (실제로 비동기 / 비동기 상태, 업로드 / 다운로드 상태 등을 다루지 않습니다), 지금까지 다른 것에 가깝습니다.
Andrew Ferrier

감사합니다. 이론적으로 DTrace iosnoop관련 명령이 OS X에서 완벽하게 작동하는 것은 아니지만 DTrace 기반 명령으로 더 많은 작업을 수행 할 수 있습니다 .이 답변에서 다루지 않은 사항에 대해서도 궁금합니다.
그레이엄 페린

5

iCloud 동기화 정보를 표시하도록 명시 적으로 설계된 내장 OS X 도구는 없습니다.

OS X 10.8.2부터 Apple은이 정보를 공개하지 않았습니다. Apple이 사용자가 원하는 정보를 제공하기 위해 OS X API (Application Programmer Interfaces)를 발행하지 않는 한, 타사는 동기화 세부 정보를 정확하게 제공 할 수 없습니다.

이 점이 주어지면 Apple의 iCloud 팀에 피드백을 제공하십시오 . Apple 엔지니어에게 원하는 내용과 이유를 알려주십시오.

기다리는 동안 Apple의 iCloud 서버에 대한 연결을 추적하고 트래픽 흐름 및 디스크 액세스를 측정 할 수 있습니다. 이러한 측정 항목은 약간의 통찰력을 제공하지만 예상 지속 시간 또는 완료율 백분율을 제공하지는 않습니다.

데이터 흐름을 탐색하려면 lsofnetstat 와 같은 OS X의 기본 제공 도구를 탐색하십시오 .


1
답변 해주셔서 감사합니다. 이 경우에 해당되는 것으로 추측했지만 다른 사람이 이미 트래픽 흐름을 역 엔지니어링하고 도구 등을 만들었기를 바라고있었습니다.
Andrew Ferrier

1

실제로 무슨 일이 일어나고 있는지보고 싶다면 tcpdump (/ usr / sbin / tcpdump)를 사용하면 패킷 캡처를 수행 할 수 있습니다. 패킷이 네트워크를 통과 할 때 표시됩니다. 가장 쉬운 방법은 아니지만이 데이터를 보는 가장 포괄적 인 방법입니다.


어떤 포트를보아야하는지 아십니까? 내 생각 엔, 25 587, 및 993 추가, 이메일을 포함하려면 적어도 80, 443, 및 5223입니다
Marnix A. 밴 Ammers을

1

OS X 10.11 (10.10이 아닌 경우)부터 iCloud에서 파일을 변경하는 동안 Finder에서 iCloud Drive의 하위 폴더가 열려 있고 해당 창의 상태 막대가 켜져 있으면 Finder는 파일의 수를 알려줍니다 동기화되고 지금까지 전송 된 데이터 양.


OSX 10.13.6에서는 상태 표시 줄에 해당 정보가 표시되지 않습니다. 사이드 바에서 파인더의 iCloud 아이콘 옆에 작은 원이 표시됩니다. 클릭하면 전송되는 데이터에 대한 정보를 얻을 수 있습니다.
Marnix A. van Ammers

스크린 샷 참조-iCloud Drive 폴더의 계층 구조 내에있는 Finder 윈도우에있는 한, 윈도우 하단을 따라 실행되는 상태 표시 줄 (⌘- / to show)은 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 할 필요가 없습니다. 왜 patrix가 그 부분을 편집했는지 확실하지 않습니까?
biffom

당신은 옳습니다, 당신의 의도를 잘못 읽습니다. OTOH, 답변을 편집하여 추가 콘텐츠를 추가 할 수 있으며 두 번째 콘텐츠를 게시 할 필요가 없습니다.
노힐 사이드
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.