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 -palvelimen debug-lokit rakenteelliseksi CSV-muodoksi analysointia ja raportointia varten.

SYNTAKSI

__AllParameterSets

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

ALIASET

Tällä cmdletillä on seuraavat alias-nimet,

KUVAUS

Muuttaa Windows DNS -palvelimen debug-lokitiedostot rakenteelliseksi CSV-dataksi, jota voidaan analysoida Excelissä, Power BI:ssä, SQL-tietokannoissa tai SIEM-työkaluissa. Suunniteltu turvallisuusanalyysiin, suorituskyvyn valvontaan, vianetsintään ja vaatimustenmukaisuusraportointiin.

Cmdlet jäsentää kaikki 17 kenttää DNS-debug-lokeista, mukaan lukien päivämäärä/aika, protokolla, asiakas-IP, kyselytyyppi, verkkotunnukset, vastauskoodit, liput, tapahtumatiedot ja tietokoneen nimi. Se tuottaa rakenteellisen CSV-tulosteen, johon voi sisältyä valinnainen tilastoyhteenveto, joka kokoaa aktiviteetit asiakkaan, protokollan ja kyselytyypin mukaan.

TÄRKEIMMÄT OMINAISUUDET:

  • Suorituskykyinen jäsentäminen, optimoitu suurille tiedostoille (100 Mt+)
  • Mukautettava CSV-erotin (oletus: puolipiste)
  • Valinnaiset tilastoyhteenvedot koottujen mittareiden kanssa
  • Kontekstisuodatus (PACKET, EVENT, Note) keskittymään tiettyihin lokimerkintöihin
  • Kulttuuritietoinen päivämäärän jäsentäminen ja muotoilu kansainvälisille palvelimille
  • Putkituen avulla eräajona useiden tiedostojen käsittelyyn
  • Valinnainen tulostiedostojen pakkaus (ZIP-muoto)
  • Valinnainen lähdetiedostojen automaattinen poisto käsittelyn jälkeen
  • Otsikkotarkistus tietojen eheyttä varten

TULOSTEEN MUOTO: Tietokoneen nimi -sarake sisältyy aina jokaisen rivin loppuun. Jos -ComputerName-parametriä ei määritetä, sarake jää tyhjäksi. Tämä varmistaa yhdenmukaisen tulosteen monipalvelinyhdistelmätapauksissa.

SUORITUSKYKY: Optimoitu käyttämällä StreamReader/StreamWriter 64 kt:n puskureilla, merkkijonotoimintoja regexin sijaan, manuaalista CSV:n generointia ja tehokasta tilastojen keruuta hashtablen avulla.

YHTEENSOPIVUUS:

  • PowerShell 5.1+ (Desktop ja Core -versiot)
  • Windows Server 2016+
  • DNS Server 2012 R2 - 2025 lokimuodot

ESIMERKIT

ESIMERKKI 1

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

Muuttaa DNS-debug-lokin oletusasetuksilla (sekä data- että tilastotiedostot puolipiste-erottimella).
Tuloste: C:\Logs\dns.csv ja C:\Logs\dns_statistic.csv

ESIMERKKI 2

PS C:\> Convert-DNSDebugLogFile -InputFile "C:\Logs\dns.log" -OutputType CSV

Tuottaa vain datatiedoston ilman tilastoja.
Tuloste: C:\Logs\dns.csv

ESIMERKKI 3

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

Tuottaa vain tilastotiedoston koottujen mittareiden kanssa.
Tuloste: C:\Logs\dns_statistic.csv

ESIMERKKI 4

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

Muuttaa lokin mukautettuun tulostussijaintiin.
Tuloste: C:\Output\parsed.csv

ESIMERKKI 5

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

Muuttaa pilkulla erotetuksi ja lisää ComputerName-sarakkeen arvolla “DNS01”.
Tuloste: C:\Logs\dns.csv ja C:\Logs\dns_statistic.csv ComputerName-sarakkeella

ESIMERKKI 6

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

Käsittelee useita DNS-debug-lokitiedostoja putken kautta eräajona.
Tuloste: Jokaiselle .log-tiedostolle luodaan .csv ja _statistic.csv tiedostot

ESIMERKKI 7

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

Muuttaa ja pakkaa tulosteen ZIP-arkistoon.
Tuloste: C:\Logs\dns.zip (sisältäen dns.csv ja dns_statistic.csv)

ESIMERKKI 8

PS C:\> Convert-DNSDebugLogFile -InputFile "C:\Logs\dns.log" -RemoveSourceFile -Verbose

Muuttaa lokin ja poistaa lähdetiedoston onnistuneen käsittelyn jälkeen.
Verbose-tuloste vahvistaa tiedoston poiston.

ESIMERKKI 9

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

Jäsentää saksalaisen päivämäärämuodon (PP.KK.VVVV) ja tuottaa US-muodossa (KK/PP/VVVV).
Käytä, kun käsittelet lokitiedostoja eri alueasetuksilla olevilta palvelimilta.

ESIMERKKI 10

PS C:\> Convert-DNSDebugLogFile -InputFile "C:\Logs\dns.log" -ContextFilter 'Packet'

Muuttaa vain DNS-kysely/vastauspakettimerkinnät, jättää EVENT- ja Note-merkinnät pois.
Käytä keskittymään varsinaiseen DNS-liikenteeseen.

ESIMERKKI 11

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

Automaattinen lokien arkistointi: käsittelee kaikki lokit, pakkaa tulosteet ja poistaa lähdetiedostot.
Ihanteellinen ajoitettuihin lokien käsittelyputkiin.

PARAMETRIT

-CompressOutput

Pakkaa luodut CSV-tiedostot ZIP-arkistoksi käsittelyn jälkeen.

Luo .zip-tiedoston, joka sisältää luodut CSV-tiedostot, ja poistaa alkuperäiset purkamattomat CSV:t. ZIP-tiedosto luodaan samaan hakemistoon ja samalla nimellä kuin CSV.

Hyödyt:

  • Vähentää merkittävästi levytilan käyttöä (CSV-tiedostot pakkaantuvat yleensä yli 90 %)
  • Yksinkertaistaa tiedostojen hallintaa ja arkistointia
  • Sopii pitkäaikaiseen säilytykseen

Esimerkki: Syöte ‘dns.log’ tuottaa ‘dns.csv’, joka pakataan ‘dns.zip’:ksi, ja ‘dns.csv’ poistetaan.

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

Määrittää arvon ComputerName-sarakkeelle CSV-tulosteessa. ComputerName-sarake on aina mukana tulosteessa – jos tätä parametria ei anneta, sarake jää tyhjäksi.

Käytä tätä, kun yhdistät lokitietoja useilta DNS-palvelimilta ja haluat tunnistaa lähdepalvelimen yhdistetyissä aineistoissa.

Huom: Tämä EI ole etäkäyttöparametri. Cmdlet 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 cmdletin suorittamista.

Jos määritetty, kysyy vahvistuksen ennen:

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

Hyödyllinen interaktiiviseen käsittelyyn, 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: ''

-ContextFilter

Suodattaa, mitkä lokimerkintätyypit sisällytetään tulosteeseen.

DNS-debug-lokit sisältävät eri kontekstit:

  • PACKET: DNS-kysely- ja vastauspakettitiedot (ensisijainen data)
  • EVENT: DNS-palvelimen tapahtumat (esim. “DNS-palvelin on käynnistynyt.”)
  • Note: Diagnostiikkamuistiinpanot ja varoitukset (esim. socket-virheet, sisäiset tilat)

Sallitut arvot:

  • ‘All’: Sisällytä kaikki kontekstit (oletus)
  • ‘Packet’: Sisällytä vain PACKET-merkinnät (DNS-kyselyt/vastaukset)
  • ‘Event’: Sisällytä vain EVENT-merkinnät (palvelintapahtumat)
  • ‘Note’: Sisällytä vain Note-merkinnät (diagnostiikkatiedot)

Oletus: All

Huom: Kun suodatetaan ‘Event’ tai ‘Note’, vain DateTime, ThreadId, Context ja Information -sarakkeet sisältävät tietoja. Muut sarakkeet (Protokolla, ClientIP jne.) ovat tyhjiä.

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

-Delimiter

Määrittää CSV-tulosteen erotinmerkin.

Oletus: puolipiste (;)

Yleisiä vaihtoehtoja: pilkku (,), sarkain (`t), putki (|)

Käytä puolipistettä alueilla, joissa pilkku on desimaalierotin (Eurooppa). Käytä pilkkua standardeissa CSV-työkaluissa ja tietokannoissa, jotka odottavat pilkulla erotettuja arvoja.

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/alueen, jota käytetään päivämäärä- ja aika-arvojen jäsentämiseen DNS-debug-lokissa.

DNS-palvelimen debug-lokit käyttävät palvelimen Windows-alueasetuksen päivämäärämuotoa. Käytä tätä parametria, kun käsittelet lokitiedostoja eri alueasetuksilla olevilta palvelimilta.

Oletus: Nykyinen kulttuuri

Yleisiä esimerkkejä:

  • ‘de-DE’ tai ‘de-AT’: saksalainen muoto (PP.KK.VVVV tai PP/KK/VVVV)
  • ’en-US’: US-muoto (KK/PP/VVVV AM/PM)
  • ’en-GB’: UK-muoto (PP/KK/VVVV 24h)
  • ‘sv-SE’: ruotsalainen/ISO-muoto (VVVV-KK-PP)
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: ''

-InputFile

Määrittää polun DNS-debug-lokitiedostoon, joka jäsennetään. Tukee taulukoita useiden tiedostojen käsittelyyn.

Hyväksyy putkisyötteen Get-ChildItem-komennosta tai muista tiedostoja tuottavista cmdleteistä.

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/alueen, jota käytetään päivämäärä- ja aika-arvojen muotoiluun CSV-tulostetiedostoissa.

Ohjaa, miten DateTime-arvot kirjoitetaan CSV:hen. Käytä tätä, kun CSV-tiedostoja käyttää sovellus tai järjestelmä, jolla on tietyt alueasetukset.

Oletus: Nykyinen kulttuuri

Yleisiä esimerkkejä:

  • ’en-US’: US-muoto (KK/PP/VVVV)
  • ‘de-DE’: saksalainen muoto (PP.KK.VVVV)
  • ‘sv-SE’ tai InvariantCulture: ISO-muoto (VVVV-KK-PP) maksimaaliseen yhteensopivuuteen
Type: CultureInfo
DefaultValue: '[System.Globalization.CultureInfo]::CurrentCulture'
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 7
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-OutputFile

Määrittää polun tulostettavalle CSV-tiedostolle. Jos ei määritetä, käytetään syötetiedoston nimeä .csv-päätteellä samassa hakemistossa kuin syöte.

Tärkeää: Täytyy olla tiedostopolku, ei hakemisto. Jos haluat käyttää syötetiedoston hakemistoa ja mukautettua nimeä, määritä koko polku tiedostonimen kanssa.

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.

Sallitut arvot:

  • ‘CSV’: Tuottaa vain datatiedoston kaikilla jäsennetyillä lokimerkinnöillä (oletus)
  • ‘Statistic’: Tuottaa vain tilastotiedoston koottujen mittareiden kanssa
  • ‘Both’: Tuottaa sekä data- että tilastotiedostot

Oletus: Both

Tilastot tarjoavat koottuja määriä asiakas-IP:n, protokollan, suunnan ja kyselytyypin mukaan sekä päivämääräalueen jokaiselle uniikille yhdistelmälle.

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ä automaattisissa lokien käsittelyputkissa tai levytilan hallinnassa. Lähdetiedosto poistetaan vain, jos käsittely onnistuu ja kaikki tulostiedostot on luotu.

Turvallisuus: Ei voi käyttää yhdessä -SkipHeaderValidation-parametrin kanssa estämään virheellisten tiedostojen vahingossa tapahtuvaa poistoa.

Varoitus: Lähdetiedostot poistetaan pysyvästi. Varmista, että tulostiedostot ovat kelvollisia ennen tämän vaihtoehdon 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 cmdlet varmistaa, että syötetiedostossa on kelvollinen DNS-palvelimen debug-lokin otsikko. Käytä tätä kytkintä käsittelemään tiedostoja ilman tarkistusta, mikä voi olla hyödyllistä:

  • Muokatuissa tai mukautetuissa lokimuodoissa
  • Vianmäärityksessä tarkistusongelmissa
  • Ei-standardeissa tai esikäsitellyissä lokeissa

Varoitus: 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. Cmdletiä ei suoriteta.

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

  • Ennakkotarkasteluun, mitkä tiedostot käsiteltäisiin
  • Tulostiedostopolkujen tarkistamiseen 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: about_CommonParameters.

SYÖTTEET

System.String[]

HUOMAUTUKSET

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

LIITTYVÄT LINKIT