Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Aracı 365 CLI
CLI tanı kayıtlarını yönetin.
logs komutu, Microsoft destek ile paylaşılabilen güvenli olan sansürlenmiş CLI log dosyalarının kopyalarını dışa aktarır.
logs export Alt komutu kullanarak Cli log dosyalarını sansürleyin ve kopyalayın. İhtaktarılan dosyalar, e-posta, GUID veya token sızdırmadan destek biletine eklenebilir.
Minimum görev: Yok. Komut yalnızca yerel log dosyalarını okuyor ve yeniden yazar.
Syntax
a365 logs [command] [options]
logs export
Microsoft desteğiyle paylaşabileceğiniz güvenli bir CLI tanı logu dosyasının sansürlenmiş bir kopyasını dışa aktarın. JWT token'larını, e-posta adreslerini, GUID'leri ve işletim sistemi yolu kullanıcı adlarını mansürler ve aynı değerleri tutarlı takma adlarla değiştirerek log korelasyonunun korunmasını sağlar.
a365 logs export [<command>] [options]
CLI, her üst düzey komut için yerel loglar dizininize bir tanı log dosyası yazar (örneğin, Windows'de %LOCALAPPDATA%\Microsoft.Agents.A365.DevTools.Cli\logs\).
logs export bu dosyalardan birini veya hepsini okur, hassas içeriği kaldırır ve sansürlenmiş kopyaları seçtiğiniz çıktı dizinine yazar.
Neler sansürlenir
| Pattern | Replacement |
|---|---|
| JWT taşıyıcı tokenlar (header.payload.signature) | <JWT-TOKEN> |
| Email addresses |
<email-1>, <email-2>, ... (e-posta başına uygun takma adlar) |
| GUID'ler (8-4-4-4-12) — bkz. İstisnalar için korunanlar |
<id-1>, <id-2>, ... (GUID başına tutarlı takma adlar) |
OS-path kullanıcı adları (C:\Users\<name>, /Users/<name>, /home/<name>) |
<username-1>, <username-2>, ... |
Aynı değerler dosya boyunca aynı alias tutar, bu yüzden günlükteki çapraz referanslar sorunları teşhis etmek için faydalı kalır. Sansürlenmiş dosya, kaynak yolunu (aynı redaksiyonlar uygulanmış) ve değiştirilen her desenin sayısını kaydeden bir başlık içerir.
What's preserved
Düzenleyici, aşağıdaki içeriği kelimesi kelimesine tutar böylece sansürlenmiş günlüğün hata ayıklama ve destek yükseltmesi için hâlâ faydalı olması için Microsoft faydalı olur:
| Preserved | Neden güvenli |
|---|---|
| Zaman damgaları, log seviyeleri, kapsam adları, hata kodları, dosya yolları (kullanıcı adları yerine getirilmiş), HTTP durum kodları, JSON şekilleri | Bunların hiçbiri kiracı veya kullanıcıyı tanımlamıyor. |
TraceId: <guid> ve CorrelationId: <guid> değerler |
CLI tarafından oluşturulan oturum lokal rastgele tanımlayıcılar. Hassas değiller ve logu sunucu tarafı izleriyle eşleştiren şeyler. |
request-id ve client-request-id değerleri Microsoft Graph hata gövdeleri içinde |
Sunucu tarafından çağrı başına oluşturuluyor. Microsoft destek sistemi, yükseltme yaptığınızda servis kayıtlarında tam talebi bulmak için bunları kullanıyor. |
| Kamuya açık, tanınmış Microsoft ve Agent 365 kaynak uygulama ID'leri: • Microsoft Graph ( 00000003-0000-0000-c000-000000000000)• Agent 365 Mesajlaşma Bot API'si • Ajan 365 Gözlemlenebilirlik API'si • Power Platform API (Bağlantı) • Agent 365 Tools (MCP izleyici kitlesi, prodüksiyon) |
Bunlar belgelenmiş kamu sabitleridir — kiracınız hakkında hiçbir şey ortaya koymazlar. Onları korumak, ' gibi Validated permission AgentIdentityBlueprint.ReadWrite.All against 00000003-0000-0000-c000-000000000000 bir satırın okunabilir kalması anlamına gelir.... against <id-4> |
Kiracıya özgü hizmet ana nesne ID'leri ve yukarıdaki desenlerle eşleşmeyen diğer GUID'ler yine de tutarlı alias mekanizması aracılığıyla sansürlenir .
Important
Redaksiyon desenleri, en yaygın hassas içeriği kaldırmak için tasarlanmıştır. Eğer loglarınızda özel sırlar (örneğin, bu CLI dışındaki kodla kaydedilen sırlar veya stack traces'e yapıştırılmış değerler) bu düzenleyicinin tanımadığı formatlarda varsa, paylaşmadan önce manuel olarak silin.
Paylaşmadan önce nasıl doğrulanır
Sansürlenmiş dosyayı bir metin düzenleyicide açın ve kiracıya özgü görünen herhangi bir şey arayın:
# 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
İhtaktarılan dosyanın başlık satırı sayıları özetler. Beklediğinizden daha fazla <id-N> takma ad görürseniz, takma ad haritası işini yapıyor — her kiracıya özgü GUID tam olarak bir takma ad alıyor.
export Seçenekler
| Option | Description |
|---|---|
<command> |
Dışa aktarmak istediğiniz günlüğün komutunun adı (örneğin setup veya cleanup). Tüm mevcut log dosyalarını tek bir çalıştırmada dışa aktarma argümanı çıkarın. |
-o, --output <output> |
Sansürlenmiş log dosyası veya dosyalarını yazmak için dizin. Varsayılan olarak mevcut dizine geçer. |
-?, -h, --help |
Yardım ve kullanım bilgilerini gösterin. |
Examples
Günlüğü mevcut dizine aktarın setup :
a365 logs export setup
Mevcut tüm günlükleri belirli bir klasöre aktarın:
a365 logs export --output ./support-bundle
Günlüğü belirli bir klasöre aktarın cleanup :
a365 logs export cleanup --output ./support-bundle
Çıktı dosyası adlandırma
Dışa aktarılan dosya şu şekilde yazılır:a365.<command>.redacted.log Atladığınızda <command>, CLI her mevcut logu aynı adlandırma deseniyle kendi sansürlenmiş dosyasına aktarır.
Important
Sansürlenmiş dosyayı paylaşmadan önce gözden geçirin. Redaksiyon kalıpları JWT token'larını, e-postaları, GUID'leri ve işletim sistemi yolu kullanıcı adlarını kapsıyor, ancak her olası sırrı kapsamıyor. Eğer logunuzda başka formatlarda özel sırlar veya hassas tanımlayıcılar varsa, paylaşmadan önce bunları manuel olarak kaldırın.
Note
logs export orijinal log dosyalarını silmez veya değiştirmez. Orijinal kayıtlar yerel kayıtlar dizininizde kalır. Komut, çıktı dizinine yalnızca sansürlenmiş kopyaları yazar.