क्या आईक्लाउड सिंक प्रगति देखी जा सकती है?


14

मेरे पास मेरा मैक ओएस एक्स 10.8 चल रहा है, ताकि मैं इसकी iCloud रिपॉजिटरी की सामग्री को देख सकूं ~/Library/Mobile Documents( यह सवाल और यह सवाल कि यह कैसे काम करता है, इसके बारे में अधिक जानकारी के लिए)। हालाँकि, मैं अपने मैक की सिंक स्थिति को देखने / देखने / समझने में सक्षम होना चाहता हूँ:

  • क्या मेरा मैक आईक्लाउड के साथ सिंक है?
  • यदि नहीं, तो क्या अपलोड / डाउनलोड किया जा रहा है / कितना समय लगेगा?
  • क्या ओएस एक्स की कोई उपयोगिताओं या अंतर्निहित विशेषताएं हैं जो मुझे इसमें से कोई भी देखने की अनुमति देंगी?

ICloud के बिना फाइल सिस्टम में स्पष्ट रूप से उजागर किए जाने पर भी ये वैध प्रश्न हैं, लेकिन स्पष्ट रूप से अधिक उपयोगी हैं यदि आप स्पष्ट रूप से iCloud रिपॉजिटरी की / में फ़ाइलों की बड़ी संख्या की प्रतिलिपि बनाते हैं।

जवाबों:


2

गतिविधि

निम्न आदेश, ऐसे एप्लिकेशन (जैसे Smultron 4 और TextEdit) के साथ iCloud के साथ काम करते हुए चलते हैं, जो व्यावसायिक दस्तावेज़ का समर्थन करते हैं -

sudo opensnoop -n ubd

- सर्वव्यापी डेमॉन द्वारा खोली गई स्थानीय फ़ाइलों को दिखाता है। फाइलें डेटाबेस, एक डेटाबेस प्रति सहकर्मी शामिल हैं। निम्नलिखित मार्ग पर एक निर्देशिका प्रति सहकर्मी:

~/Library/Application Support/Ubiquity

डेटा के प्रकार

यदि आप प्रगति को मापना चाहते हैं, तो तय करें कि कौन से प्रकार को मापने के लिए:

  • कोर डेटा
  • दस्तावेजों
  • मौलिक मूल्य।

बचत, प्रगति और माप

कोर डेटा

… परिवर्तन लॉग फ़ाइलें, स्टोर फ़ाइल नहीं, iCloud पर अपलोड की जाती हैं और उपयोगकर्ता के प्रत्येक अन्य डिवाइस पर डाउनलोड की जाती हैं। जब एक परिवर्तन लॉग उसी iCloud खाते से जुड़े किसी अन्य डिवाइस से आता है, तो कोर डेटा प्राप्त परिवर्तन लॉग के आधार पर आपके ऐप को SQLite डेटाबेस की स्थानीय प्रतिलिपि अपडेट करता है। iCloud और Core Data यह सुनिश्चित करते हैं कि प्रत्येक स्थानीय डेटाबेस को उसी परिवर्तन के सेट के साथ अपडेट किया जाए। ...

विचार करें: परिवर्तन लॉग की सामग्री की व्याख्या किए बिना , क्या लॉग फ़ाइल के अपलोड की प्रगति को मापना सार्थक होगा?

दस्तावेज़

मैक डेवलपर लाइब्रेरी में:

... दस्तावेज़-आधारित ऐप्स जगह-जगह स्वतः सहेज सकते हैं, और इसके दस्तावेज़ स्वचालित रूप से उचित समय पर सहेजे जाते हैं ...

इसके अलावा:

स्वचालित डेटा-बचत रणनीतियाँ उपयोगकर्ता को राहत देती हैं

… आपके कोड में उपयुक्त बिंदु जहाँ किसी भी उपयोगकर्ता-संबंधित परिवर्तन को सहेजा जाना चाहिए और उन परिवर्तनों को डिस्क पर स्वचालित रूप से लिखें। ...

कुछ उपयुक्त समय जब आप उपयोगकर्ता डेटा को स्वचालित रूप से सहेज सकते हैं, उसमें निम्नलिखित शामिल हैं:

  • जब उपयोगकर्ता ऐप विंडो बंद कर देता है या ऐप को छोड़ देता है (ApplicationWillTerminate :)
  • जब एप्लिकेशन निष्क्रिय हो जाता है (ApplicationWillResignActive :)
  • जब उपयोगकर्ता आपके एप्लिकेशन को छुपाता है (ApplicationWillHide :)
  • जब भी उपयोगकर्ता आपके ऐप में डेटा में एक वैध परिवर्तन करता है

अंतिम आइटम का मतलब है कि आपके पास किसी भी समय उपयोगकर्ता के डेटा को बचाने की स्वतंत्रता है, ऐसा करने के लिए समझ में आता है। उदाहरण के लिए, यदि उपयोगकर्ता डेटा रिकॉर्ड के क्षेत्रों को संपादित कर रहा है, तो आप प्रत्येक फ़ील्ड मान को बदल सकते हैं क्योंकि यह बदल जाता है या जब उपयोगकर्ता नया रिकॉर्ड प्रदर्शित करता है, तो आप सभी फ़ील्ड को प्रतीक्षा और सहेज सकते हैं। इस प्रकार के वृद्धिशील परिवर्तन करने से यह सुनिश्चित होता है कि डेटा हमेशा अद्यतित रहता है, लेकिन इसके लिए आपके डेटा मॉडल के अधिक सूक्ष्म प्रबंधन की आवश्यकता होती है। ...

गौर कीजिए: जो बचत करता है, वह इतनी बार-बार हो सकती है और इतनी कम मात्रा, कि माप सार्थक नहीं होगी।

आइटम-info.db

मैंने अपने स्थानीय मैक प्रतीत होने वाले सहकर्मी के लिए डेटाबेस ब्राउज़ करने के लिए SQLite डेटाबेस ब्राउज़र के साथ खिलवाड़item-info.db किया। जैसा कि मुझे संदेह था, ऐप केवल ब्राउज़ कर सकता है जबकि सिस्टम डेटाबेस का उपयोग नहीं कर रहा था - Untitled.pngआईक्लाउड में संपादित करने के लिए पूर्वावलोकन का उपयोग करने के दो सेकंड के भीतर , मैं अब डेटाबेस को ब्राउज़ नहीं कर सकता ... और इसी तरह।

संदर्भ

iCloud डिजाइन गाइड

मैक ऐप प्रोग्रामिंग गाइड : द कोर ऐप डिज़ाइन:


यह बहुत अच्छा है, धन्यवाद। आपके द्वारा दी गई कमांड विशेष रूप से उपयोगकर्ता के अनुकूल आउटपुट का उत्पादन नहीं करती है (और यह वास्तव में insync / out-of-सिंक स्थिति, अपलोड / डाउनलोड स्थिति, आदि को संबोधित नहीं करता है), लेकिन यह अब तक की किसी भी चीज़ की तुलना में करीब है।
एंड्रयू फेरियर

धन्यवाद - सिद्धांत रूप में हम DTrace- आधारित आदेशों के साथ और अधिक कर सकते हैं, iosnoopलेकिन सभी चीजें नहीं हैं DTrace से संबंधित कार्य OS X पर पूरी तरह से। मैं भी, उन चीजों के बारे में उत्सुक हूं जो इस उत्तर से आच्छादित नहीं हैं।
ग्राहम पेरिन

5

कोई अंतर्निहित ओएस एक्स उपकरण नहीं हैं जो आपको iCloud को सिंक्रनाइज़ करने की जानकारी दिखाने के लिए स्पष्ट रूप से डिज़ाइन किए गए हैं।

OS X 10.8.2 के रूप में, Apple ने इस जानकारी को सार्वजनिक नहीं किया है। जब तक Apple आपके द्वारा मांगी गई जानकारी प्रदान करने के लिए OS X एप्लिकेशन प्रोग्रामर इंटरफेस (API) प्रकाशित नहीं करता, तब तक कोई भी तीसरा पक्ष सिंक्रोनाइज़ेशन विवरण प्रदान करने में सक्षम नहीं होगा।

इसे देखते हुए, कृपया Apple की iCloud टीम का फीडबैक दें ; एप्पल के इंजीनियरों को बताएं कि आप क्या चाहते हैं और क्यों।

जब आप प्रतीक्षा करते हैं, तो आप Apple के iCloud सर्वर से कनेक्शन ट्रैक कर सकते हैं, ट्रैफ़िक प्रवाह माप सकते हैं, और डिस्क एक्सेस कर सकते हैं। ये मीट्रिक कुछ अंतर्दृष्टि प्रदान करेंगे लेकिन वे अपेक्षित अवधि या प्रतिशत पूर्ण उपाय प्रदान नहीं करेंगे।

डेटा प्रवाह का पता लगाने के लिए, OS X के अंतर्निहित टूल जैसे कि lsof और netstat को देखें


1
जवाब के लिए धन्यवाद। अनुमान लगाया था कि यह मामला हो सकता है, लेकिन मैं उम्मीद कर रहा था कि कोई और पहले से ही ट्रैफ़िक प्रवाह को रिवर्स-इंजीनियर करेगा, एक उपकरण बनाया होगा, आदि
एंड्रयू फेरियर

1

यदि आप वास्तव में यह देखना चाहते हैं कि क्या चल रहा है, तो आप tcpdump (/ usr / sbin / tcpdump) का उपयोग कर सकते हैं, जो पैकेट कैप्चर करता है। नेटवर्क पर जाते ही यह आपको पैकेट दिखाएगा। यह सबसे आसान नहीं है, लेकिन यह इस डेटा को देखने का सबसे व्यापक तरीका है।


किसी भी विचार को किन बंदरगाहों पर देखा जाना चाहिए? मेरा अनुमान कम से कम 80, 443, और 5223 है, ईमेल में शामिल करने के लिए, 25, 587 और 993 जोड़ें।
Marnix A. van Ammers

1

OS X 10.11 के रूप में (यदि 10.10 नहीं है), यदि आपके पास आईक्लाउड में फाइल बदलते समय फाइंडर में आपके आईक्लाउड ड्राइव का कोई सबफ़ोल्डर खुला है, और उस विंडो का स्टेटस बार चालू है, तो फ़ाइंडर आपको बताएगा कि कितनी फाइलें हैं सिंक किया जा रहा है और अब तक कितना डेटा ट्रांसफर किया जा चुका है।


OSX 10.13.6 में मुझे वह जानकारी स्टेटस बार में नहीं दिखती है। मैं साइडबार में खोजक के आईक्लाउड आइकन के बगल में एक छोटा सा सर्कल देखता हूं। मैं उस पर क्लिक कर सकता हूं ताकि डेटा पर कुछ जानकारी प्राप्त की जा सके।
मार्निक्स ए। वैन एम्मर्स

स्क्रीनशॉट देखें - विंडो के निचले भाग में चलने वाले स्टेटस बार (should- / को दिखाने के लिए) को iCloud के साथ सिंक करने की प्रगति प्रदर्शित करनी चाहिए, जब तक कि आप किसी भी फाइंडर विंडो में हों जो आपके 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

बस इसे फिर से जारी करें (एरो और प्रेस रिटर्न) और आपको इसे बदलना चाहिए।


आप यह आज्ञा कहाँ चला रहे हैं? आउटपुट कैसा दिखता है?
एंड्रयू फेरियर

टर्मिनल से।
बिफोम

1
आपको cd ~ / Pictures की आवश्यकता नहीं है। निश्चित नहीं है कि पैट्रिक्स ने इसे क्यों संपादित किया?
बिफोम

आप सही हैं, अपने इरादे को गलत बताएं। OTOH, आप अतिरिक्त सामग्री जोड़ने के लिए अपना उत्तर संपादित कर सकते हैं, दूसरा पोस्ट करने की आवश्यकता नहीं है।
nohillside
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.