एजेंट 365 सीएलआई logs कमांड संदर्भ

सीएलआई डायग्नोस्टिक लॉग प्रबंधित करें। कमांड Microsoft समर्थन के साथ साझा करने के लिए सुरक्षित हैं जो CLI लॉग फ़ाइलों की संशोधित प्रतिलिपियों को निर्यात करता है। CLI लॉग फ़ाइलों को संपादित करने और प्रतिलिपि बनाने के लिए उपकमांड का उपयोग करें logs export । निर्यात की गई फ़ाइलें ईमेल, GUIDs या टोकन लीक किए बिना समर्थन टिकट से जुड़ने के लिए सुरक्षित हैं।

न्यूनतम भूमिका आवश्यक: कोई नहीं। आदेश केवल स्थानीय लॉग फ़ाइलों को पढ़ता है और फिर से लिखता है।

Syntax

a365 logs [command] [options]

logs export

किसी CLI निदान लॉग फ़ाइल की एक संपादित प्रतिलिपि निर्यात करें जो Microsoft समर्थन के साथ साझा करने के लिए सुरक्षित है. JWT टोकन, ईमेल पते, GUIDs और OS-पथ उपयोगकर्ता नामों को संपादित करता है, और समान मानों को सुसंगत उपनामों से बदल देता है ताकि लॉग सहसंबंध संरक्षित रहे।

a365 logs export [<command>] [options]

CLI प्रत्येक शीर्ष-स्तरीय आदेश के लिए एक नैदानिक लॉग फ़ाइल आपके स्थानीय लॉग निर्देशिका में लिखता है (उदाहरण के लिए, %LOCALAPPDATA%\Microsoft.Agents.A365.DevTools.Cli\logs\ Windows पर)। logs export उन फ़ाइलों में से एक या सभी को पढ़ता है, संवेदनशील सामग्री को निकालता है, और संपादित प्रतिलिपियों को आपकी चुनी हुई आउटपुट निर्देशिका में लिखता है।

क्या संशोधित किया जाता है

Pattern Replacement
JWT बियरर टोकन (header.payload.signature) <JWT-TOKEN>
Email addresses <email-1>, , <email-2>... (प्रति ईमेल लगातार उपनाम)
GUIDs (8-4-4-4-12) — देखें अपवादों के लिए क्या संरक्षित है <id-1>, , <id-2>... (GUID के अनुसार लगातार उपनाम)
ओएस-पथ उपयोगकर्ता नाम (,C:\Users\<name> , /Users/<name>/home/<name>) <username-1>, , <username-2>...

समान मान फ़ाइल में समान उपनाम रखते हैं, इसलिए लॉग में क्रॉस-रेफरेंस समस्याओं के निदान के लिए उपयोगी रहते हैं। संपादित फ़ाइल में एक हेडर शामिल होता है जो स्रोत पथ (लागू किए गए समान संशोधनों के साथ) और प्रतिस्थापित किए गए प्रत्येक पैटर्न की गणना को रिकॉर्ड करता है।

What's preserved

रिडक्टर जानबूझकर निम्नलिखित सामग्री को शब्दशः रखता है इसलिए संपादित लॉग अभी भी डिबगिंग और Microsoft समर्थन वृद्धि के लिए उपयोगी है:

Preserved यह सुरक्षित क्यों है
टाइमस्टैम्प, लॉग स्तर, क्षेत्र के नाम, त्रुटि कोड, फ़ाइल पथ (उपयोगकर्ता नाम प्रतिस्थापित के साथ), HTTP स्थिति कोड, JSON आकार इनमें से कोई भी किरायेदार या उपयोगकर्ता की पहचान नहीं करता है।
TraceId: <guid> और CorrelationId: <guid> मूल्य सत्र-स्थानीय यादृच्छिक पहचानकर्ता CLI द्वारा जनरेट किए गए। वे संवेदनशील नहीं हैं और वे सर्वर-साइड ट्रेस के खिलाफ लॉग को जोड़ते हैं।
request-id और client-request-id मान Microsoft Graph त्रुटि निकायों के अंदर प्रति कॉल सर्वर-जनरेटेड है। जब आप आगे बढ़ते हैं तो Microsoft समर्थन सेवा लॉग में सटीक अनुरोध को देखने के लिए इनका उपयोग करता है।
सार्वजनिक, प्रसिद्ध Microsoft और Agent 365 संसाधन अनुप्रयोग IDs:
* Microsoft Graph ()00000003-0000-0000-c000-000000000000
* एजेंट 365 मैसेजिंग बॉट एपीआई
* एजेंट 365 अवलोकन एपीआई
* Power Platform API (कनेक्टिविटी)
* एजेंट 365 उपकरण (एमसीपी दर्शक, उत्पादन)
ये प्रलेखित सार्वजनिक स्थिरांक हैं - वे आपके किरायेदार के बारे में कुछ भी नहीं बताते हैं। उन्हें संरक्षित करने का अर्थ है एक पंक्ति जैसी बनने Validated permission AgentIdentityBlueprint.ReadWrite.All against 00000003-0000-0000-c000-000000000000 के बजाय ... against <id-4>पठनीय रहती है।

टेनेंट-विशिष्ट सेवा प्रिंसिपल ऑब्जेक्ट IDs और ऊपर दिए गए प्रतिमान से मेल नहीं खाने वाले किसी भी अन्य GUIDs अभी भी संगत-उपनाम तंत्र के माध्यम से redacted हैं ।

Important

संपादन पैटर्न सबसे आम संवेदनशील सामग्री को हटाने के लिए डिज़ाइन किए गए हैं। यदि आपके लॉग में कस्टम रहस्य (उदाहरण के लिए, इस CLI के बाहर कोड द्वारा लॉग किए गए रहस्य, या स्टैक ट्रेस में चिपकाए गए मान) प्रारूपों में हैं, तो यह redactor नहीं पहचानता है, तो साझा करने से पहले उन्हें मैन्युअल रूप से निकालें।

साझा करने से पहले सत्यापित करने का तरीका

संपादित फ़ाइल को टेक्स्ट एडिटर में खोलें और टैनेंट-विशिष्ट दिखने वाली किसी भी चीज़ को स्कैन करें:

# Spot-check what was preserved vs aliased
Select-String -Path .\a365.setup.redacted.log -Pattern "CorrelationId|TraceId|request-id" | Select-Object -First 10
Select-String -Path .\a365.setup.redacted.log -Pattern "<id-|<email-|<JWT-TOKEN>|<username-" | Measure-Object

निर्यात की गई फ़ाइल की हेडर लाइन गणनाओं को सारांशित करती है। यदि आप अपनी अपेक्षा से उपनामों की <id-N> अधिक संख्या देखते हैं, तो उपनाम मानचित्र अपना काम कर रहा है - प्रत्येक किरायेदार-विशिष्ट GUID को बिल्कुल एक उपनाम मिलता है।

export विकल्प

Option Description
<command> उस आदेश का नाम जिसका लॉग आप निर्यात करना चाहते हैं (जैसे या setup ).cleanup प्रत्येक उपलब्ध लॉग फ़ाइल को एक रन में निर्यात करने के लिए इस तर्क को छोड़ दें।
-o, --output <output> संपादित लॉग फ़ाइल या फ़ाइलों को लिखने के लिए निर्देशिका. वर्तमान निर्देशिका के लिए डिफ़ॉल्ट।
-?, , -h--help मदद और उपयोग की जानकारी दिखाएं.

Examples

लॉग को setup वर्तमान निर्देशिका में निर्यात करें:

a365 logs export setup

प्रत्येक उपलब्ध लॉग को किसी विशिष्ट फ़ोल्डर में निर्यात करें:

a365 logs export --output ./support-bundle

लॉग को cleanup किसी विशिष्ट फ़ोल्डर में निर्यात करें:

a365 logs export cleanup --output ./support-bundle

आउटपुट फ़ाइल नामकरण

निर्यात की गई फ़ाइल को इस प्रकार a365.<command>.redacted.logलिखा जाता है। जब आप छोड़ देते हैं <command>, तो सीएलआई प्रत्येक उपलब्ध लॉग को उसी नामकरण पैटर्न के साथ अपनी स्वयं की संपादित फ़ाइल में निर्यात करता है।

Important

संपादित फ़ाइल को साझा करने से पहले उसकी समीक्षा करें। संपादन पैटर्न JWT टोकन, ईमेल, GUIDs और OS-पथ उपयोगकर्ता नाम को कवर करते हैं, लेकिन वे हर संभावित रहस्य को कवर नहीं करते हैं। यदि आपके लॉग में अन्य स्वरूपों में कस्टम रहस्य या संवेदनशील पहचानकर्ता हैं, तो साझा करने से पहले उन्हें मैन्युअल रूप से निकालें.

Note

logs export मूल लॉग फ़ाइलों को हटाता या संशोधित नहीं करता है। मूल लॉग आपकी स्थानीय लॉग निर्देशिका में रहते हैं। कमांड केवल आउटपुट निर्देशिका में संशोधित प्रतिलिपियों को लिखता है।