क्या किसी को पता चला है कि सफारी 7 / मावेरिक्स के साथ प्रत्येक अलग सफारी वेब सामग्री प्रक्रिया के अद्वितीय पृष्ठ की पहचान कैसे करें?


10

मुझे पता है कि मैं यह आश्चर्यचकित करने वाला पहला व्यक्ति नहीं हूं।

क्रोम टास्क मैनेजर जैसा कुछ।

संक्षेप में, जब आपके पास नए सफारी 7 (Mavericks के साथ भेज दिया गया) में कई टैब / पृष्ठ खुले होते हैं, तो प्रत्येक को एक अलग सिस्टम प्रक्रिया के रूप में लॉन्च किया जाता है। आप गतिविधि मॉनिटर में प्रक्रियाओं की सूची देख सकते हैं, लेकिन आप प्रत्येक प्रक्रिया का अंतर्निहित पृष्ठ या URL नहीं देख सकते हैं।

यह एक भगोड़ा या फांसी पृष्ठ की समस्या निवारण के लिए बहुत उपयोगी होगा जो RAM या CPU साइकिल को चूस रहा है।

Apple ने Safari 6. में गतिविधि विंडो को हटा दिया और अब Safari 7 के साथ, अलग-अलग प्रक्रियाएँ बहुत अच्छी हैं, लेकिन प्रत्येक टैब के बारे में अधिक बारीक जानकारी वास्तव में बहुत अच्छी होगी।

किसी को?


हां, दूर जा रही एक्टिविटी विंडो काफी नुकसान दायक है। लेकिन गतिविधि खिड़की एकदम सही है। योसेमाइट की सफारी में, Apple ने इस मुद्दे को ध्यान में रखा है। हम देखेंगे कि कैसे।
निकोलस बारबुल्स्को

जवाबों:


6

यदि आप प्रक्रिया के नाम पर माउस घुमाते हैं तो टूलटिप आपको URL बेस डोमेन बताता है

यहाँ छवि विवरण दर्ज करें


लेकिन यह देखना संभव नहीं है कि पूर्ण URL क्या है? इसलिए यदि मेरे पास उदाहरण के लिए दो टैब खुले हैं, तो google.com और प्रत्येक टैब में एक और खोज अनुरोध है तो मैं आपके बीच कोई अंतर नहीं कर पाऊंगा? लेकिन अगर कुछ ज्यादा की जरूरत नहीं है, कि यह काफी सरल और बहुत अधिक सरल है, डी
नैपकिन

यह सही है :-)
markhunte

1
अद्भुत, दोस्तों। धन्यवाद! बस बेतरतीब ढंग से अपने आप ही माउसओवर चाल की खोज की और जब मैं आपकी प्रतिक्रियाएं देख पाया तो पोस्ट को वापस करने के लिए यहां आ रहा था। स्टैकचेंज से मुझे कभी कोई फॉलो-अप नोटिफिकेशन नहीं मिला।
dmbream

10

यह एक आदर्श समाधान नहीं है, लेकिन काम करने का एक अच्छा तरीका है।

सफारी खोलें तो प्राथमिकताएं पर जाएं। डीबग विकल्प सक्रिय करें (मेनू बार में मेनू विकसित करें)

सफ़ारी वरीयता फलक EDIT: विकसित मेनू को सक्रिय करने के बजाय, आपको एक टर्मिनल खोलना होगा और डीबग मेनू को सक्रिय करना होगाdefaults write com.apple.Safari IncludeInternalDebugMenu -bool true

धन्यवाद @ कोलिन सी।

आपको Show Web Process IDs in Page Titlesडीबग> विविध फ्लैग के तहत विकल्प मिलेगा

वेब प्रोसेस आईडी दिखाएं

यदि आप गतिविधि मॉनिटर अभी खोलते हैं, तो आप संबंधित वेबसाइट को वेब प्रोसेस आईडी देख सकते हैं।

वेब प्रोसेस आईडी और एक्टिविटी मॉनिटर

मुझे उम्मीद है कि यह आपकी मदद कर रहा है।


1
प्राथमिकता मेनू में डेवलपर मेनू को सक्षम करने के बजाय आपको कमांड लाइन के माध्यम से डिबग मेनू को "डिफॉल्ट राइट्स कॉम.एप्पल.सैफरी शामिल करें। इनटर्नलड्यूब्यूमेन्यू -बुल सच" के साथ सक्षम करना होगा
कॉलिन सी।

अच्छी टिप। लेकिन हम अभी भी विपरीत तरीके से याद करते हैं: प्रक्रिया → टैब्स।
निकोलस बारबुल्स्को

3

अपडेट: "प्रत्येक सफारी पीआईडी ​​के साथ कौन से URL जुड़े हुए हैं?"

यह देखने के विषय पर एक अद्यतन है कि कौन से सफारी URL गतिविधि मॉनिटर में पीआईडी ​​के साथ जुड़े हुए हैं। मैं डीबग मेनू पर 10.10.3 के साथ Yosemite पर सफारी 8.0.6 का उपयोग कर रहा हूं, और "पृष्ठ शीर्षक में पीआईडी ​​दिखाएं" विकल्प के साथ। (ऐसा करने के लिए ऊपर और नीचे देखें।)

निकोलस बी ने कहा कि "हम अभी भी विपरीत तरीके से चूकते हैं: प्रोसेस> टैब्स", एक्टिविटी मॉनिटर में सिंगल लाइन-आइटम पीआईडी ​​पर आधारित टैब नामों की सूची की तलाश करते हैं।

मैं आपको दिखा सकता हूं कि किसी विशेष वेब प्रक्रिया (PID) से जुड़े सभी टैब कैसे देखें, हालांकि यह पूरी तरह से संतुष्टि नहीं ला सकता है:

  • यह एक बहु-चरणीय प्रक्रिया है, और
  • टैब पर आधारित पीआईडी ​​असाइनमेंट में तर्क खोजने की कोशिश चाय की पत्तियों को पढ़ने के समान है।

यह भी याद रखना चाहिए कि गतिविधि मॉनिटर के भीतर किसी भी एकल वेब प्रक्रिया से जुड़े सभी पृष्ठ URL को सूचीबद्ध करना UI में व्यावहारिक नहीं है क्योंकि यह आज भी मौजूद है। (काश एप्पल की सफारी टीम इसे वेब प्रक्रियाओं के लिए सूचना विंडो में जोड़ देती, लेकिन!)

सबसे पहले, मैंने उस PID द्वारा खोले गए अंतिम पूर्ण पृष्ठ को संदर्भित प्रक्रिया लाइन-आइटम पर दिखाए गए नाम को मान लिया (कैश्ड पृष्ठों को शामिल नहीं किया गया), लेकिन अफसोस यह मामला प्रतीत नहीं होता है। मुझे यकीन नहीं है कि लाइन-आइटम वास्तव में इसका नाम कैसे मिलता है। मैं एक्टिविटी मॉनिटर में प्रत्येक लाइन-आइटम के साथ क्या टैब जुड़े हुए हैं, यह देखने के लिए कि मेरे स्पष्टीकरण के बाद जवाब खोजने के लिए अपने प्रयोग के परिणाम साझा करेंगे।

क्रमशः

  1. सफारी में डिबग मेनू चालू करें

  2. पेज टाइटल में वेब प्रोसेस आईडी दिखाने का विकल्प सक्षम करें (जैसा कि ऊपर बताया गया है)

  3. Brett Terpstra, TabLinks से यह उत्कृष्ट सफारी एक्सटेंशन प्राप्त करें । (यदि आप प्लगइन उपयोगी पाते हैं तो कृपया उसे दान करें!)

  4. छोटे लिंक आइकन के साथ बटन दबाकर एक्सटेंशन को चलाएं (आमतौर पर सफारी की खोज / स्थान बार के बाईं ओर)

  5. विस्तार में, परिणामों को प्रदर्शित करने के लिए उपयोग किए गए टेम्पलेट में एक विभाजक चरित्र जोड़ें (भविष्य की खोज-और-प्रतिस्थापित कार्य के लिए)।

    मैंने एक यिंग-यांग चरित्र डाला, इसलिए मेरा टेम्पलेट था [%w-%n]:☯%u☯%t:। यह आपको परिणाम देगा - [WP PID]प्रत्येक टैब नाम के अंत में जानकारी सहित- सफारी की डिबगिंग जानकारी से।

  6. अपने पसंदीदा टेक्स्ट एडिटर ऐप में परिणामों को कॉपी और पेस्ट करें। (निस राइटर प्रो मेरा है!)

    अपने विभाजक चरित्र (मेरे लिए, and) पर एक खोज और प्रतिस्थापित करें, और उन्हें एक टैब चरित्र (यहां एक:) के साथ बदलें

    एक और खोज करें और उस पर बदलें [WP, और केवल एकल प्रमुख स्थान को टैब वर्ण से बदलें «tab»[WP। यह आपको एक स्प्रेडशीट में पीआईडी ​​को एक अलग कॉलम में विभाजित करने की अनुमति देगा।

    इस फ़ाइल को एक .tabसादे पाठ फ़ाइल के रूप में सहेजें ।

  7. एक स्प्रेडशीट ऐप (मैंने नंबर का उपयोग किया) में टैब फ़ाइल खोलें और पीआईडी ​​द्वारा मज़ा छांटें। अब केवल एक और कदम है ...

  8. में गतिविधि मॉनिटर , चयन देखें ▶ ︎ सभी प्रक्रियाओं, पदानुक्रम , और अपनी स्प्रेडशीट में यूआरएल दिखा लाइन-आइटम की सूची कॉपी-पेस्ट, टैब नाम और नंबर के साथ-साथ आप पहले से ही वहाँ है।

    (आप उन सभी स्तंभ डेटा को छोड़ सकते हैं जिनकी आपको आवश्यकता नहीं है और बस दो कॉलमों में URL और PID को रखें या, RAM उपयोग की तुलना करने के लिए मेमोरी कॉलम भी जोड़ें।)

बस; बिल्कुल जल्दी नहीं, लेकिन बहुत जटिल नहीं। शायद एक तेज़ तरीका है, लेकिन यह मेरी पहली कोशिश थी कि मैं यह जानकारी हासिल करूँ।

ऐसा करने के बाद, आपको मेरे समान परिणाम मिल सकते हैं। मेरे पास कुल 36 टैब के साथ 9 खिड़कियां खुली थीं, जो सभी 20 "url- शैली" प्रक्रियाओं में निहित थीं।

( नोट: यहाँ, मैं कई qtititerer और सफ़ारी वेब सामग्री प्रक्रियाओं को शामिल नहीं कर रहा हूँ । ये अधिकांश साथ-साथ चलते हैं - यदि सभी "url प्रक्रियाओं" के नहीं हैं। इन qtititererver प्रक्रियाओं में मुख्य "url प्रक्रियाओं की तुलना में एक छोटे RAM पदचिह्न होते हैं। ", उदाहरण के लिए, 4.5 एमबी बनाम 300 एमबी।)

टिप्पणियों

  • मेरे पास 36 टैब के साथ 9 खिड़कियां थीं, जो 20 प्रक्रियाओं में चल रही थीं

  • रैम का उपयोग 5.4 जीबी (औसत 258 एमबी प्रति प्रक्रिया) था

  • निजी मेमोरी 2.0 जीबी कुल (औसत 97 एमबी प्रति प्रक्रिया) थी

  • किसी एकल प्रक्रिया लाइन-आइटम में एक या अधिक टैब हो सकते हैं (मेरा आमतौर पर PID प्रति एक या दो टैब होता है)

  • लाइन-आइटम में URL नाम किसी भी पैटर्न का अनुसरण नहीं करता है जिसे मैं समझ सकता हूं, सिवाय इसके कि नाम आमतौर पर (लेकिन हमेशा नहीं) उस PID को सौंपे गए टैब में से एक के आधार URL को दर्शाता है

  • कभी-कभी URL का नाम गलत होता है! मेरी 20 प्रक्रियाओं में से 4 में एक URL का उपयोग किया गया था जो मेरे किसी भी टैब में नहीं खुला था।

    (ये कैश्ड पेज हो सकते हैं, शायद?)

  • एक नया टैब (या विंडो) या तो एक मौजूदा पीआईडी ​​को सौंपा जा सकता है, या एक नई प्रक्रिया के लिए, एक "यादृच्छिक" फैशन में प्रतीत होता है। वे न तो अनुक्रमिक हैं, न ही किसी विशेष विंडो के साथ समूहीकृत; इस प्रकार, एकाधिक टैब वाली किसी भी विंडो में एक-दूसरे के साथ चलने वाले कई पीआईडी ​​हो सकते हैं।

अभी के लिए इतना ही काफी है! मुझे आशा है कि कोई बहुत अधिक होशियार हो सकता है जितना मैं साथ आ सकता हूं और थोड़ा और समझा सकता हूं! अलोहा।


0

मैंने एक एप्सस्क्रिप्ट लिखी, मैं सामान्य रूप से इसे टर्मिनल से चलाता हूं लेकिन यह आसानी से आपके उपयोग में आने वाले कुछ अन्य आसानी के लिए संशोधित किया जा सकता है। आउटपुट विंडो / टैब, शीर्षक, मेमोरी का उपयोग करता है, URL लंबी स्ट्रिंग्स के साथ शुरू करने के लिए छोटा ... अंत

स्मृति आकार प्राप्त करने के लिए आपको ऊपर दिए गए कई पदों द्वारा विस्तृत रूप में प्रक्रिया आईडी दिखाने वाले टैब की आवश्यकता होगी। मैं ऑसस्क्रिप्ट के माध्यम से स्क्रिप्ट को चलाने के लिए एक फ़ंक्शन का उपयोग करता हूं, सभी फ़ाइल में टिप्पणियों में नोट किया गया है।

उदाहरण:

Window/Tab: Window Title                      MemoryUse    @  URL (may be missing on old tabs, swap window and many will change)
2/1:Javascript - DEV Community 👩👩‍💻 [WP 72069] [WP 84642] [WP 9351]        14M+    @  missing value
2/2:11 must-see TED Talks | TED Talks [WP 72071] [WP 84643] [WP 9352]         13M+    @  missing value
2/3:Folk Show: Episode 69 by Folk Radio | Mixcloud [WP 84644] [WP 9353]       13M+    @  missing value
2/4:heat exchanger extractor fan kitche...e Search [WP 84645] [WP 9354]       13M+    @  missing value
2/5:Fral Flipperdry 300 portable domest...midifier [WP 84646] [WP 9355]       13M+    @  missing value
2/6:DRI-365 for Homeowners [WP 84647] [WP 9356]                               14M+    @  missing value
2/7:Cart - Ventilation Megastore [WP 7302] [WP 9357]                          13M+    @  missing value
2/8:boulder DHV-20B preheat power - Google Search [WP 7357] [WP 9358]         13M+    @  missing value
2/9:osascript updating script file - Google Search [WP 8935] [WP 9359]        13M+    @  missing value
2/10:osx lion - Prevent an AppleScript s...ts - Stack Overflow [WP 9360]      81M+    @  /programming/9487...dification-date-when-using
^^^^^^^^^^^^^^^ above is window 2     Active tab 10

1/1:RouterOS -> WPMikroTik -> Interface Traffic Graphing [WP 9361]            87M+    @  http://192.168.88.1/graphs/iface/wlan2/
1/2:Decrypting TLS Browser Traffic With...| Red Flag Security [WP 9362]       86M+    @  https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/
1/3:"Show Web Process IDs in Page Title" bug - Google Search [WP 10201]       98M+    @  https://www.google.com/search?client=saf...e%22+bug&ie=UTF-8&oe=UTF-8
1/4:Has anyone figured out how to ident...s? - Ask Different [WP 10202]       202M+    @  https://apple.stackexchange.com/question...-of-each-separate-safari-w
^^^^^^^^^^^^^^^ above is window 1     Active tab 4

Window/Tab: Window Title                      MemoryUse    @  URL (may be missing on old tabs, swap window and URL info will change)
EXPLANATION: Front-most window is 1, last listed. Next window back, if any, will be 2, etc.
Left most TAB is 1/1, right most 1/4, probably the most recent.

ध्यान दें कि सफारी में कुछ कीड़े हैं (11.1.2 कम से कम) ताकि पृष्ठों के कैश और उनके शीर्षक 0 में या 1 से अधिक पीआईडी ​​हो सकें, जावास्क्रिप्ट पेज में कैश से 2 पुराने संदर्भ हैं लेकिन स्क्रिप्ट लेता है अंतिम, वर्तमान, पीआईडी। यदि URL सफारी द्वारा लोड नहीं किया गया है, तो प्रक्रिया छोटी है और URL स्ट्रिंग गायब हो जाएगी।

अगर दिलचस्पी है तो मुझे पीएम बना दो। मैं इसे github पर डाल सकता है ...

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