Tämä on monen sivun tulostettava näkymä osiosta Paina tulostaaksesi.

Palaa tavalliseen näkymään.

Moduulikomentojen viite

Täältä löydät viitteen moduulin kaikista komennoista. Tämä viite on suunniteltu auttamaan sinua löytämään nopeasti tarvitsemasi komento ja ymmärtämään, miten sitä käytetään tehokkaasti.

Klikkaamalla komentoa siirryt yksityiskohtaiselle sivulle, joka tarjoaa kattavat tiedot komennosta, mukaan lukien sen syntaksi, parametrit, esimerkit sekä mahdolliset lisähuomiot tai vinkit käytöstä.

1 - Convert-DNSDebugLogFile

YHTEENVETO

Muuttaa Windows DNS Serverin debug-lokitiedostot CSV-muotoon.

SYNTAKSI

__AllParameterSets

Convert-DNSDebugLogFile [-InputFile] <string[]> [[-OutputFile] <string>] [[-Delimiter] <string>]
 [[-ComputerName] <string>] [[-OutputType] <string>] [[-InputCulture] <cultureinfo>]
 [[-OutputCulture] <cultureinfo>] [-SkipHeaderValidation] [-RemoveSourceFile] [-CompressOutput]
 [-WhatIf] [-Confirm] [<CommonParameters>]

ALIASET

Tällä cmdlet-komennolla on seuraavat alias-nimet,

KUVAUS

Suorituskykyinen jäsentäjä Windows DNS Serverin debug-lokitiedostoille, jonka tarkoituksena on tehdä DNS-palvelimen toiminnasta läpinäkyvää, analysoitavaa ja arvioitavaa raportointi- ja analytiikkatyökaluissa.

DNS Serverin debug-lokit sisältävät yksityiskohtaista kysely-/vastaustietoa, mutta niiden analysointi raaka-tekstimuodossa on hankalaa. Tämä skripti muuntaa lokit rakenteellisiksi CSV-tiedostoiksi, jotka voidaan tuoda Exceliin, Power BI:hin, SQL-tietokantoihin tai muihin data-analyysialustoihin.

KESKEISET OMINAISUUDET:

  • Jäsentää kaikki 16 kenttää DNS-debug-lokeista (päivämäärä, aika, protokolla, asiakas-IP, kyselytyyppi jne.)
  • Tuottaa rakenteellisen CSV-tulosteen mukautettavilla erotinmerkeillä
  • Luo valinnaisia tilastoyhteenvedot, jotka kokoavat toimintaa asiakkaan, protokollan ja kyselytyypin mukaan
  • Käsittelee yksittäisiä tiedostoja tai eräajona putken kautta
  • Tukee sekä normaaleja että yksityiskohtaisia DNS-debug-lokiformaatteja
  • Valinnainen automaattinen tulostiedostojen pakkaus levytilan säästämiseksi
  • Valinnainen lähdetiedostojen poisto onnistuneen käsittelyn jälkeen
  • Varmistaa lokitiedostojen otsikot tietojen eheyttä varten

KÄYTTÖTARKOITUKSET:

  • Turvallisuusanalyyseihin: epäilyttävien DNS-kyselykuvioiden tunnistaminen
  • Suorituskyvyn seuranta: kyselymäärien ja vasteaikojen seuranta
  • Kapasiteettisuunnittelu: DNS-palvelimen kuormituksen ja asiakasjakauman analysointi
  • Säädöstenmukaisuusraportointi: DNS-toiminnan dokumentointi tarkastusvaatimuksia varten
  • Vianmääritys: DNS-resoluutio-ongelmien tutkiminen

SUORITUSKYKY: Optimoitu suurille tiedostoille (100 Mt+) käyttämällä:

  • Merkkijonotoimintoja regexin sijaan jäsentämiseen
  • StreamReader/StreamWriter 64 kt:n puskureilla
  • Käsin tehtyä CSV:n generointia Export-Csv:n ylikuormituksen välttämiseksi
  • Tehokasta sanakirjapohjaista tilastojen keruuta

YHTEENSOPIVUUS:

  • PowerShell 5.1+ Windowsilla
  • PowerShell 7+ Windowsilla
  • Windows Server 2016 ja uudemmat
  • Tukee DNS Server 2012 R2 - 2025 debug-lokiformaatteja

ESIMERKIT

ESIMERKKI 1

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log"

Muuttaa DNS-debug-lokin CSV-muotoon oletusasetuksilla. Tulostaa: C:\Logs\dns.csv (vain datatiedosto, puolipiste-erotin).

ESIMERKKI 2

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -OutputType Both

Muuttaa DNS-debug-lokin ja luo molemmat tulostiedostot. Tulostaa: C:\Logs\dns.csv (data) ja C:\Logs\dns_statistic.csv (koottu tilasto).

ESIMERKKI 3

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -OutputType Statistic

Luo vain tilastotiedoston ilman koko CSV-datatiedostoa. Tulostaa: C:\Logs\dns_statistic.csv (vain tilastot).

ESIMERKKI 4

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -OutputFile "C:\Output\parsed.csv"

Muuttaa DNS-debug-lokin mukautettuun tulostussijaintiin. Tulostaa: C:\Output\parsed.csv.

ESIMERKKI 5

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -Delimiter "," -ComputerName "DNS01" -OutputType Both

Muuttaa lokin pilkulla erotetuksi ja lisää ComputerName-sarakkeen arvolla “DNS01”. Tulostaa: C:\Logs\dns.csv ja C:\Logs\dns_statistic.csv, molemmat sisältävät “DNS01” ComputerName-sarakkeessa.

ESIMERKKI 6

PS C:\> Get-ChildItem "C:\Logs\*.log" | .\Convert-DnsDebugLogFile.ps1 -OutputType Both

Käsittelee useita DNS-debug-lokitiedostoja putken kautta. Tulostaa: Jokaiselle .log-tiedostolle luodaan sekä .csv (data) että _statistic.csv (tilastot) tiedostot.

ESIMERKKI 7

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -CompressOutput

Muuttaa DNS-debug-lokin ja pakkaa tulosteen ZIP-arkistoksi. Tulostaa: C:\Logs\dns.zip, joka sisältää dns.csv. Puraamaton csv-tiedosto poistetaan pakkaamisen jälkeen.

ESIMERKKI 8

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -OutputType Both -CompressOutput

Muuttaa lokin tilastoineen ja pakkaa molemmat tulostiedostot. Tulostaa: C:\Logs\dns.zip, joka sisältää dns.csv ja dns_statistic.csv.

ESIMERKKI 9

PS C:\> Get-ChildItem "C:\Logs\*.log" | .\Convert-DnsDebugLogFile.ps1 -RemoveSourceFile -CompressOutput

Käsittelee useita lokitiedostoja, pakkaa tulosteen ja poistaa lähdetiedostot. Jokainen .log-tiedosto muunnetaan pakatuksi .zip-tiedostoksi, jonka jälkeen lähdetiedosto poistetaan. Sopii automatisoituihin lokien arkistointiputkiin.

ESIMERKKI 10

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\old_dns.log" -RemoveSourceFile -Verbose

Muuttaa lokitiedoston ja poistaa lähdetiedoston onnistuneen käsittelyn jälkeen. Verbose-tila vahvistaa tiedoston poiston. Käytä varoen, sillä lähdetiedostot poistetaan pysyvästi.

ESIMERKKI 11

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -InputCulture 'de-DE'

Muuttaa DNS-debug-lokin saksalaiselta Windows-palvelimelta. Käytä tätä, kun lokitiedosto on peräisin palvelimelta, jolla on eri alueasetukset.

ESIMERKKI 12

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -InputCulture ([System.Globalization.CultureInfo]::GetCultureInfo('sv-SE'))

Muuttaa DNS-debug-lokin ruotsalaiselta Windows-palvelimelta, joka käyttää ISO-päivämäärämuotoa (VVVV-KK-PP). Hyödyllinen lokien käsittelyssä eri alueasetuksilla toimivilta palvelimilta.

ESIMERKKI 13

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -InputCulture 'de-DE' -OutputCulture 'en-US'

Muuttaa DNS-debug-lokin saksalaiselta Windows-palvelimelta ja muotoilee tulosteen päivämäärät Yhdysvaltojen järjestelmille. Hyödyllinen kansainvälisten palvelimien lokien käsittelyyn Yhdysvaltojen järjestelmille.

ESIMERKKI 14

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -OutputCulture ([System.Globalization.CultureInfo]::InvariantCulture)

Muuttaa DNS-debug-lokin ja muotoilee tulosteen päivämäärät ISO 8601 -muotoon (VVVV-KK-PP). Ihanteellinen monialustaisiin yhteensopivuustilanteisiin tai tiedonsiirtoon.

ESIMERKKI 15

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -WhatIf

Näyttää, mitä tapahtuisi, jos komento suoritettaisiin, ilman että tiedostoja luodaan. Hyödyllinen komentoparametrien testaamiseen ennen varsinaista datankäsittelyä.

ESIMERKKI 16

PS C:\> .\Convert-DnsDebugLogFile.ps1 -InputFile "C:\Logs\dns.log" -RemoveSourceFile -CompressOutput -WhatIf

Esikatselu koko työnkulusta, mukaan lukien pakkaus ja lähdetiedoston poisto. Tiedostoja ei luoda, pakata tai poistaa – näytetään vain, mitä tapahtuisi.

PARAMETRIT

-CompressOutput

Pakkaa luodut CSV-tiedostot ZIP-arkistoksi.

Luo .zip-tiedoston, joka sisältää luodut CSV-tiedostot, ja poistaa alkuperäiset purkamattomat CSV:t. ZIP-tiedosto luodaan samaan kansioon kuin CSV-tiedostot ja samalla nimellä. Pakkaus tapahtuu heti kunkin tiedoston käsittelyn jälkeen levytilan hallinnan tehostamiseksi.

Hyödyt:

  • Vähentää merkittävästi levytilan käyttöä (CSV-tiedostot pakkaantuvat hyvin)
  • Yksinkertaistaa tiedostojen hallintaa ja arkistointia
  • Sopii pitkäaikaiseen käsiteltyjen lokien säilytykseen

Esimerkki: Syöte ‘dns.log’ tuottaa ‘dns.csv’, joka pakataan ‘dns.zip’ -tiedostoksi, minkä jälkeen ‘dns.csv’ poistetaan.

Yhteensopiva PowerShell 5.1+ ja Windows Server 2016+ kanssa.

Type: SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-ComputerName

Valinnainen. Jos määritetty, lisää ComputerName-sarakkeen CSV-tulosteeseen annetulla arvolla. Hyödyllinen, kun yhdistetään lokitietoja useilta DNS-palvelimilta.

Tärkeää: Tämä EI ole etäkäyttöominaisuus. Skripti käsittelee vain paikallisia tiedostoja.

Type: String
DefaultValue: ''
SupportsWildcards: false
Aliases:
- Server
- DNSServer
- HostName
ParameterSets:
- Name: (All)
  Position: 3
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-Confirm

Kysyy vahvistuksen ennen cmdlet-komennon suorittamista.

Jos määritetty, kysyy vahvistuksen ennen:

  • Jokaisen DNS-debug-lokitiedoston käsittelyä
  • Lähdetiedostojen poistoa (kun -RemoveSourceFile on käytössä)
  • Olemassa olevien tulostiedostojen korvaamista

Hyödyllinen vuorovaikutteisessa käytössä, kun haluat hallita, mitkä tiedostot käsitellään.

Type: SwitchParameter
DefaultValue: ''
SupportsWildcards: false
Aliases:
- cf
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-Delimiter

CSV-tulosteen erotinmerkki.

Oletus on puolipiste ‘;’

Type: String
DefaultValue: ;
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 2
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-InputCulture

Määrittää kulttuurin, jota käytetään päivämäärä- ja aika-arvojen jäsentämiseen DNS-debug-lokissa.

DNS Serverin debug-lokit käyttävät päivämäärämuotoa sen Windows-alueasetuksen mukaan, jossa loki on luotu. Tämä parametri mahdollistaa lokien jäsentämisen palvelimilta, joilla on eri alueasetukset.

Oletuksena nykyinen kulttuuri ([System.Globalization.CultureInfo]::CurrentCulture).

Yleisiä kulttuuriarvoja:

  • ‘de-DE’ tai ‘de-AT’: saksalainen muoto (PP.KK.VVVV tai PP/KK/VVVV)
  • ’en-US’: yhdysvaltalainen muoto (KK/PP/VVVV)
  • ’en-GB’: brittiläinen muoto (PP/KK/VVVV)
  • ‘sv-SE’: ruotsalainen/ISO-muoto (VVVV-KK-PP)

Esimerkki: -InputCulture ‘de-DE’ saksalaiselta Windows-palvelimelta tuleville lokeille. Esimerkki: -InputCulture ([System.Globalization.CultureInfo]::GetCultureInfo(‘sv-SE’)) ruotsalaisille lokeille.

Type: CultureInfo
DefaultValue: '[System.Globalization.CultureInfo]::CurrentCulture'
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 5
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-InputFile

Polku jäsennettävään DNS-debug-lokitiedostoon. Tukee taulukoita useiden tiedostojen käsittelyyn.

Type: String[]
DefaultValue: ''
SupportsWildcards: false
Aliases:
- FullName
- FilePath
- InputPath
- File
- Path
ParameterSets:
- Name: (All)
  Position: 0
  IsRequired: true
  ValueFromPipeline: true
  ValueFromPipelineByPropertyName: true
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-OutputCulture

Määrittää kulttuurin, jota käytetään päivämäärä- ja aika-arvojen muotoiluun tulostettavissa CSV-tiedostoissa.

Tämä parametri ohjaa, miten DateTime-arvot kirjoitetaan CSV-tulosteeseen. Hyödyllinen, kun CSV-tiedostoja käytetään sovelluksissa tai järjestelmissä, joilla on tietyt alueasetukset.

Oletuksena nykyinen kulttuuri ([System.Globalization.CultureInfo]::CurrentCulture).

Yleisiä kulttuuriarvoja:

  • ’en-US’: yhdysvaltalainen muoto (KK/PP/VVVV)
  • ‘de-DE’: saksalainen muoto (PP.KK.VVVV)
  • ’en-GB’: brittiläinen muoto (PP/KK/VVVV)
  • ‘sv-SE’: ruotsalainen/ISO-muoto (VVVV-KK-PP)

Esimerkki: -OutputCulture ’en-US’ päivämäärien muotoiluun Yhdysvaltojen järjestelmiin. Esimerkki: -OutputCulture ([System.Globalization.CultureInfo]::InvariantCulture) ISO-muotoon.

Type: CultureInfo
DefaultValue: '[System.Globalization.CultureInfo]::CurrentCulture'
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 6
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-OutputFile

Valinnainen. Polku tulostettavalle CSV-tiedostolle. Jos ei määritetä, käytetään syötetiedoston nimeä .csv-päätteellä.

Täytyy olla tiedostopolku, ei kansio. Jos haluat määrittää vain tulostuskansion, jätä tämä parametri pois, ja skripti käyttää samaa kansiota kuin syötteellä.

Type: String
DefaultValue: ''
SupportsWildcards: false
Aliases:
- Output
- Destination
- OutFile
- OutputPath
ParameterSets:
- Name: (All)
  Position: 1
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-OutputType

Määrittää tuotettavan tulosteen tyypin.

Kelvolliset arvot:

  • ‘CSV’: Luo vain CSV-tiedoston jäsennetyllä lokidatalla (oletus)
  • ‘Statistic’: Luo vain tilastotiedoston koottujen tietojen kanssa
  • ‘Both’: Luo sekä CSV- että tilastotiedostot

Oletuksena ‘Both’.

Type: String
DefaultValue: Both
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 4
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-RemoveSourceFile

Poistaa lähde-DNS-debug-lokitiedoston onnistuneen käsittelyn jälkeen.

Käytä tätä kytkintä poistaaksesi syötetiedostot automaattisesti, kun ne on onnistuneesti jäsennetty ja tulostiedostot luotu. Hyödyllinen:

  • Automaattisissa lokien käsittelyputkissa
  • Levytilan hallinnassa lokien keruussa
  • Estämään jo muunnettujen tiedostojen uudelleenkäsittely

Turvatoimet:

  • Poistaa tiedostot vain onnistuneen käsittelyn ja tulostuksen jälkeen
  • Ohittaa poiston, jos käsittely epäonnistuu tai keskeytyy
  • Ei voi käyttää yhdessä SkipHeaderValidationin kanssa turvallisuuden vuoksi

Varoitus: Lähdetiedostot poistetaan pysyvästi. Varmista, että tulostiedostot ovat kelvollisia ennen tämän asetuksen käyttöä.

Type: SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-SkipHeaderValidation

Ohittaa DNS-debug-lokin otsikkotarkistuksen.

Oletuksena skripti varmistaa, että syötetiedostolla on kelvollinen DNS Server debug-lokin otsikkorakenne. Käytä tätä kytkintä käsitelläksesi tiedostoja ilman otsikkovarmistusta, mikä voi olla hyödyllistä:

  • Muokattujen tai mukautettujen lokiformaattien käsittelyssä
  • Vianmäärityksessä otsikkovarmistuksen ongelmissa
  • Ei-standardeilla otsikoilla varustettujen lokien käsittelyssä

Varoitus: Tämän parametrin käyttö voi aiheuttaa käsittelyvirheitä, jos tiedosto ei ole kelvollinen DNS-loki.

Type: SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-WhatIf

Näyttää, mitä tapahtuisi, jos cmdlet suoritettaisiin. Cmdlet:iä ei suoriteta.

Jos määritetty, näyttää yksityiskohtaiset tiedot toiminnoista, jotka suoritettaisiin ilman että niitä todella suoritetaan. Hyödyllinen:

  • Esikatseluun, mitkä tiedostot käsiteltäisiin
  • Tulostiedostopolkujen tarkistukseen ennen käsittelyä
  • Skriptien testaamiseen ennen tuotantokäyttöä
Type: SwitchParameter
DefaultValue: ''
SupportsWildcards: false
Aliases:
- wi
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

CommonParameters

Tämä cmdlet tukee yleisiä parametreja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ja -WarningVariable. Lisätietoja on kohdassa about_CommonParameters.

SYÖTTEET

System.String[]

HUOMAUTUKSET

Versio: 1.2.0.0 Tekijä: Andreas Bellstedt, Copilot Päivämäärä: 2026-01-23 Avainsanat: Microsoft, Windows Server, DNSServer, DNS, DebugLog, LogParser

LIITTYVÄT LINKIT