ಇದು ಯಾವ ಬಗ್ಗೆ?

ಹೆಸರಿನಿಂದಲೇ ತಿಳಿಯುವಂತೆ, ಈ ಲೇಖನವು ವಿಂಡೋಸ್ DNS ಸರ್ವರ್‌ನ ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಸಾಮರ್ಥ್ಯಗಳ ಬಗ್ಗೆ ಇದೆ. ಆದ್ದರಿಂದ, ಈ ಲೇಖನವನ್ನು ಓದುವ ಮೂಲಕ, ನಿಮ್ಮ ಪರಿಸರದಲ್ಲಿ ಹೆಸರು ಪರಿಹಾರ ಪ್ರಕ್ರಿಯೆಗಳ ಬಗ್ಗೆ ಮಾಹಿತಿ ಪಡೆಯುತ್ತೀರಿ. ಇದು DNS-ಸಂಬಂಧಿತ ಸಮಸ್ಯೆಗಳ ಪರಿಹಾರ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಗೆ ಬಹಳ ಸಹಾಯಕವಾಗಿರಬಹುದು. ವಿವರಗಳಿಗೆ ಹೋಗುವ ಮೊದಲು, DNS ಸರ್ವರ್ ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಎಂದರೆ ಏನು ಮತ್ತು ಇದು -ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ- ಏಕೆ ಮುಖ್ಯವಾದ ವಿಷಯ ಮತ್ತು ಪ್ರಾಯೋಗಿಕ ಸಹಾಯಕರಾಗಿರುತ್ತದೆ ಎಂಬುದನ್ನು ಮೊದಲು ಅರ್ಥಮಾಡಿಕೊಳ್ಳೋಣ.

ಬಹಳಷ್ಟು ಸಂದರ್ಭಗಳಲ್ಲಿ, DNS ಸರ್ವರ್‌ವು ಆಕ್ಟಿವ್ ಡೈರೆಕ್ಟರಿ ಪರಿಸರದಲ್ಲಿ ಡೊಮೈನ್ ಕಂಟ್ರೋಲರ್‌ನಲ್ಲಿ ಒಂದು ಪಾತ್ರವಾಗಿದೆ. ಪ್ರತಿಯೊಂದು ಸಂದರ್ಭದಲ್ಲೂ, DNS ಸರ್ವರ್ ನೆಟ್ವರ್ಕ್ ಮೂಲಭೂತ ಮೂಲಭೂತಾಂಶವಾಗಿದೆ. ಹೆಸರು ಪರಿಹಾರವು ಎಲ್ಲೆಡೆ ಇದೆ ಮತ್ತು ಕಂಪ್ಯೂಟರ್‌ಗಳು ನೆಟ್ವರ್ಕ್‌ನಲ್ಲಿ ಹೇಗೆ ಸಂವಹನ ಮಾಡುತ್ತವೆ ಎಂಬುದರ ಮೂಲಭೂತ ಭಾಗವಾಗಿದೆ.

ಆದರೆ ಏನಾದರೂ ತಪ್ಪಾಗಿದೆಯೆಂದು ಅಥವಾ ಈ ಪ್ರಮುಖ ಘಟಕವನ್ನು ಯಾವುದೇ ಕಾರಣಕ್ಕಾಗಿ ಸ್ಪರ್ಶಿಸಲು ಅಗತ್ಯವಿದೆಯೆಂದರೆ ಏನಾಗುತ್ತದೆ? ಇದು ಹಲವಾರು ಕಾರಣಗಳಿಂದ ಸಂಭವಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ:

  • ಪರಿಹಾರ - ಯಾರೋ ಹೆಸರು ಪರಿಹಾರದಲ್ಲಿ ಸಮಸ್ಯೆಗಳ ವರದಿ ಮಾಡುತ್ತಾರೆ. ಕೆಲಕಾಲದಲ್ಲಿ, ತಪ್ಪಾದ IP ವಿಳಾಸಗಳನ್ನು ಕ್ಲೈಂಟ್‌ಗೆ ಹಿಂತಿರುಗಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಒಂದು ಅಪ್ಲಿಕೇಶನ್ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ನಿಲ್ಲಿಸುತ್ತದೆ.
  • ಸ್ಥಾನಾಂತರ ಮತ್ತು ಬದಲಾವಣೆ ನಿರ್ವಹಣೆ - ಸರ್ವರ್‌ಗಳನ್ನು ಬೇರೆಡೆಗೆ ಸ್ಥಳಾಂತರಿಸಲು ಅಗತ್ಯವಿರಬಹುದು. ಹೊಸ ನೆಟ್ವರ್ಕ್ ಸೆಗ್ಮೆಂಟ್‌ಗೆ, ಹೈಪರ್‌ಸ್ಕೇಲರ್‌ಗೆ ಅಥವಾ simplesmente ಸಂಸ್ಥೆಯು ಆಕ್ಟಿವ್ ಡೈರೆಕ್ಟರಿ‌ನಿಂದ ನೆಟ್ವರ್ಕ್ ಉಪಕರಣಗಳಿಗೆ DNS ಅನ್ನು ವರ್ಗಾಯಿಸಲು ನಿರ್ಧರಿಸಿದೆ. ಈ ಹಂತದಲ್ಲಿ ಕ್ಲೈಂಟ್‌ಗಳನ್ನು ಹೊಸ DNS ಸರ್ವರ್‌ನ್ನು ಗುರಿಯಾಗಿಸಲು ಪುನಃ ಸಂರಚಿಸಲು ಅಗತ್ಯವಿರಬಹುದು.
  • ಸಂಖ್ಯೆಗಳ ಮತ್ತು (ಭದ್ರತಾ) ವಿಶ್ಲೇಷಣೆ - ಯಾರು ಏನನ್ನು ಕೇಳುತ್ತಿದ್ದಾರೆ? ಯಾವ ರೀತಿಯ ಮಾದರಿಗಳನ್ನು ಗಮನಿಸಬಹುದು? ಯಾವ ರೀತಿಯ ವಿನಂತಿಗಳು ಮಾಡಲಾಗುತ್ತವೆ? ಯಾವುದೇ ಅನುಮಾನಾಸ್ಪದ ಚಟುವಟಿಕೆಗಳಿವೆಯೇ?

ಈ ರೀತಿಯ ಸಂದರ್ಭಗಳಲ್ಲಿ, ಹೆಸರು ಪರಿಹಾರ ವಿವರಗಳ ಬಗ್ಗೆ ತಿಳಿವಳಿಕೆ ಹೊಂದಿರುವುದು ಅಮೂಲ್ಯವಾಗಿರಬಹುದು. ಈ ಲೇಖನವು ಆ ತಿಳಿವಳಿಕೆಯನ್ನು ಪಡೆಯಲು ಕೆಲವು ಮಾರ್ಗಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. “DNS-ಕ್ಲೈಂಟ್” ಎಂದು ಮಾತನಾಡುವಾಗ, ನಾನು ಹೆಸರು ಪರಿಹಾರವನ್ನು ಕೇಳುತ್ತಿರುವ ಯಾವುದೇ ಸಾಧನವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತೇನೆ, ಉದಾಹರಣೆಗೆ ವರ್ಕ್‌ಸ್ಟೇಶನ್, ಸರ್ವರ್, ಮುದ್ರಕ, IT ಮೂಲಭೂತ ಸಾಧನಗಳು ಅಥವಾ IoT ಸಾಧನಗಳು.

ವಿಂಡೋಸ್ DNS ಸರ್ವರ್ ಒಳನೋಟಗಳ ಸಾಮರ್ಥ್ಯಗಳು

“DNS ಸರ್ವರ್‌ನಿಂದ ವಿಷಯವನ್ನು ಹೇಗೆ ಪಡೆಯುವುದು?” ಎಂಬ ಪ್ರಶ್ನೆಗೆ, ಹಲವಾರು ಆಯ್ಕೆಗಳು ಲಭ್ಯವಿವೆ. ನಿರ್ಧಾರಗಳು, ನಿರ್ಧಾರಗಳು ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ಆಯ್ಕೆಗಳ ಬಗ್ಗೆ ನೋಡೋಣ:

ಸಾಮರ್ಥ್ಯ - ನೆಟ್ವರ್ಕ್ ಪ್ಯಾಕೆಟ್ ಕ್ಯಾಪ್ಚರ್

ಕ್ಲಾಸಿಕ್ ಮತ್ತು ಶಕ್ತಿಶಾಲಿ. ಬಹುಶಃ ದೀರ್ಘಕಾಲದ ಪರಿಹಾರವಲ್ಲ, ಆದರೆ ತಕ್ಷಣದ ಪರಿಹಾರ ಅಥವಾ ನಿಖರ ವಿಶ್ಲೇಷಣೆಗೆ, ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಅಮೂಲ್ಯವಾಗಿದೆ. ನಾನು ನನ್ನ ಹಿಂದಿನ ಲೇಖನದಲ್ಲಿ Capture Network Traffic in Windows ಬಗ್ಗೆ ಬರೆದಿದ್ದೇನೆ, ಆದ್ದರಿಂದ ಇಲ್ಲಿ ವಿವರಗಳಿಗೆ ಹೋಗುವುದಿಲ್ಲ.

ಸಾಮರ್ಥ್ಯ - ಫೈರ್‌ವಾಲ್ ಲಾಗಿಂಗ್

ನೀವು ನಿಮ್ಮ ನೆಟ್ವರ್ಕ್‌ನಲ್ಲಿ ವಿಭಜನೆ ಹೊಂದಿದ್ದರೆ ಮತ್ತು ಫೈರ್‌ವಾಲ್ ಲಾಗ್‌ಗಳಿಗೆ ಪ್ರವೇಶವಿದ್ದರೆ, ನೀವು DNS -ಮತ್ತು ಇತರ ಎಲ್ಲಾ ಸೇವೆಗಳ- ಬಗ್ಗೆ ಯಾರು ಸಂವಹನ ಮಾಡುತ್ತಿದ್ದಾರೆ ಎಂಬ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಬಹುದು. ಇದು ಅತ್ಯಂತ ವಿವರವಾದ ಮಾಹಿತಿಯಲ್ಲ, ಏಕೆಂದರೆ ಇದು ಸೂಕ್ಷ್ಮತೆ ಮತ್ತು ಸೇವಾ-ನಿರ್ದಿಷ್ಟ ವಿವರಗಳನ್ನು ಕೊರತೆಯಾಗಿದೆ, ಆದರೆ ಇದು ಸಹಾಯಕವಾಗಿರಬಹುದು ಮತ್ತು ಇದು ಈಗಾಗಲೇ ಇದ್ದರೆ ತ್ವರಿತ ಜಯವಾಗಿದೆ. ನೀವು ಸಮಾನಾಂತರ ನೆಟ್ವರ್ಕ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದರೆ, DNS-ಕ್ಲೈಂಟ್‌ಗಳು ಮತ್ತು DNS-ಸರ್ವರ್ ನಡುವೆ ಫೈರ್‌ವಾಲ್ ಇರದಿರಬಹುದು. ನೀವು ಸ್ಥಳೀಯ ವಿಂಡೋಸ್-ಫೈರ್‌ವಾಲ್ ಅನ್ನು ಬಳಸಬಹುದು, ಆದರೆ ನೀವು ಮುಂದಿನ ವಿಭಾಗಗಳಲ್ಲಿ ನೋಡಿದಂತೆ, ಈ ಸಂದರ್ಭದಲ್ಲಿ ಉತ್ತಮ ಆಯ್ಕೆಗಳು ಇವೆ. ನಂತರ, “ಸಂಸ್ಥೆಯ ಸೈಲೋಗಳು” ಮತ್ತು “ತಂಡಗಳ ನಡುವಿನ ಸಂಪರ್ಕದ ಕೊರತೆಯ” ನಿರ್ಬಂಧಿತ ಪ್ರಕರಣವಿದೆ, ಅಲ್ಲಿ ಫೈರ್‌ವಾಲ್ ಲಾಗ್‌ಗಳನ್ನು ಪಡೆಯುವುದು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ, ಇವು ಇದ್ದರೂ.

ಸಾಮರ್ಥ್ಯ - ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳು

ನೀವು ನಿಮ್ಮ DNS ಸರ್ವರ್‌ನಲ್ಲಿ ಎಲ್ಲಾ ಘಟನೆಗಳನ್ನು ಲಾಗ್ ಮಾಡಲು ಇವೆಂಟ್‌ಲಾಗ್ ಸಂರಚನೆಯು ಹೊಂದಿರುವುದಾಗಿ ಆಶಿಸುತ್ತೇನೆ. ಇಲ್ಲದಿದ್ದರೆ, ಈಗ ಅದನ್ನು ಹೊಂದಿಸಲು ಸಮಯವಾಗಿದೆ, ಏಕೆಂದರೆ ಇದು ನಿಮ್ಮ ವಿಂಡೋಸ್ DNS ಸೇವೆಯಲ್ಲಿ ಆಪರೇಷನಲ್ ಲಾಗಿಂಗ್ಗಾಗಿ ಉತ್ತಮ ಆರಂಭಿಕ ಬಿಂದು.

ಇದು ಅತ್ಯಂತ ವಿವರವಾದ ಮಾಹಿತಿಯಲ್ಲ, ಆದರೆ ಇದು ಕ್ಲಾಸಿಕ್ ವಿಂಡೋಸ್ ಇವೆಂಟ್ ಲಾಗ್‌ಗಳಲ್ಲಿ ಮೂಲಭೂತ ಒಳನೋಟಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ.

ಕ್ಲಾಸಿಕ್ ವಿಂಡೋಸ್ ಇವೆಂಟ್ ಲಾಗ್‌ಗಳನ್ನು ಹೊರತುಪಡಿಸಿ, DNS ಸರ್ವರ್‌ಗೆ ವಿಶೇಷವಾದ ಅಪ್ಲಿಕೇಶನ್ ಲಾಗ್‌ಗಳು ಕೂಡ ಲಭ್ಯವಿವೆ. ಬಹಳಷ್ಟು ಜನರು ಇವೆಂಟ್ ವೀಕ್ಷಕದ “ಅಪ್ಲಿಕೇಶನ್ ಮತ್ತು ಸೇವೆಗಳ ಲಾಗ್‌ಗಳಲ್ಲಿ” “DNS ಸರ್ವರ್” ಲಾಗ್ ಅನ್ನು ತಿಳಿದಿದ್ದಾರೆ, ಆದರೆ ಅವು ಸೇವೆಯ ಬಗ್ಗೆ ನಿಜವಾದ ಒಳನೋಟಗಳಿಗೆ ಅಷ್ಟು ಆಸಕ್ತಿಯಲ್ಲ.

ಅತ್ಯಂತವಾಗಿ, ಫೋಲ್ಡರ್ ರಚನೆಯಲ್ಲಿಯೇ ಇನ್ನೂ ಎರಡು DNS ಸರ್ವರ್ ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳು ಲಭ್ಯವಿವೆ. ಆಡಿಟ್ ಲಾಗ್ ಇದು DNS ಸರ್ವರ್‌ನಲ್ಲಿ ಏನಾದರೂ ಕಾರ್ಯಾಚರಣೆಗಳು ನಡೆಯುತ್ತವೆ ಎಂಬ ಕಾರ್ಯಾಚರಣಾತ್ಮಕ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ: DNS Server Audit Event Log ಮರುಭಾಗದಲ್ಲಿ, ಕಡಿಮೆ ತಿಳಿದ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಲಾಗ್ ಅನ್ನು ಬೇಡಿಕೆಯಂತೆ ಸಕ್ರಿಯಗೊಳಿಸಬಹುದು. ಇದು ನಡೆಯುತ್ತಿರುವ ಹೆಸರು ಪರಿಹಾರ ಪ್ರಕ್ರಿಯೆಗಳ ಬಗ್ಗೆ ಬಹಳ ವಿವರವಾದ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ ಯಾವ ರೀತಿಯ ಪ್ರಶ್ನೆಗಳು ಮಾಡಲಾಗುತ್ತವೆ, ಯಾವ ರೀತಿಯ ಪ್ರತಿಸ್ಪಂದನೆಗಳನ್ನು ಕಳುಹಿಸಲಾಗುತ್ತದೆ, ಮತ್ತು ಇತರವುಗಳು. DNS Server Analytical Event Log ಈ ಲಾಗ್ ಡೀಫಾಲ್ಟ್ ಮೂಲಕ ಸಕ್ರಿಯವಾಗಿಲ್ಲ, ಆದರೆ ಇದು ಪರಿಹಾರ ಮತ್ತು ವಿಶ್ಲೇಷಣಾ ಉದ್ದೇಶಗಳಿಗೆ ಸಕ್ರಿಯಗೊಳಿಸಬಹುದು. ದುಃಖಕರವಾಗಿ, ನಾನು ತಿಳಿದಂತೆ, “ವಿಶ್ಲೇಷಣಾತ್ಮಕ” ಲಾಗ್ ಹಲವಾರು ಫೈಲ್‌ಗಳಿಗೆ ಮರುಚರಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಇದನ್ನು ದೀರ್ಘಕಾಲದ ದೃಷ್ಟಿಕೋನಕ್ಕಾಗಿ ಬಳಸುವುದು ಕಷ್ಟವಾಗಬಹುದು. ತಾತ್ಕಾಲಿಕ ಪರಿಹಾರ ಅಥವಾ ವಿಶ್ಲೇಷಣೆಗೆ, ಇದು ಒಂದು ಆಯ್ಕೆಯಾದೀತು.

ಸಾಮರ್ಥ್ಯ - ಇವೆಂಟ್‌ಟ್ರೇಸಿಂಗ್

ವಿಂಡೋಸ್ ಇವೆಂಟ್ ಟ್ರೇಸಿಂಗ್ (ETW) ನೀವು ವಿಂಡೋಸ್ ಒಳಾಂಗಣಗಳಲ್ಲಿ ಆಳವಾಗಿ ಹೋಗಲು ಬಯಸಿದಾಗ ಬಹುಶಃ ಅತ್ಯಂತ ಶಕ್ತಿಶಾಲಿ ಆಯ್ಕೆಯಾಗಿದೆ. ದುಃಖಕರವಾಗಿ, ಇದು ಅತ್ಯಂತ ಸಂಕೀರ್ಣವಾಗಿದೆ ಮತ್ತು ಇದು ಬಳಕೆದಾರ ಸ್ನೇಹಿ ಅಲ್ಲ. ನಾನು ಭವಿಷ್ಯದಲ್ಲಿ ETW ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಒಳಗೊಂಡಿರಬಹುದು, ಆದರೆ ಈಗ, ನಾನು ಇಲ್ಲಿ ವಿವರಗಳಿಗೆ ಹೋಗುವುದಿಲ್ಲ.

ಸಾಮರ್ಥ್ಯ - ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್

ವಿಂಡೋಸ್ DNS ಸರ್ವರ್‌ಗೂ ಸುಲಭವಾಗಿ ಸಂರಚಿಸಲು ಸಾಧ್ಯವಾದ ನಿರ್ಮಿತ ಪಠ್ಯ ಆಧಾರಿತ ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಇದೆ. ಈ ವೈಶಿಷ್ಟ್ಯವು “ವಿಶ್ಲೇಷಣಾತ್ಮಕ” ಇವೆಂಟ್ ಲಾಗ್‌ನಂತೆ ವಿವರಗಳನ್ನು ಲಾಗ್ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಆದರೆ ಇದು ಪಠ್ಯ ಫೈಲ್‌ಗಳಿಗೆ ಬರೆಯುತ್ತದೆ ಮತ್ತು ಮರುಚರಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಇದು ದೀರ್ಘಕಾಲದ ದೃಷ್ಟಿಕೋನಕ್ಕಾಗಿ ಬಳಸಬಹುದು.

ETW ಗೆ ಹೋಲಿಸಿದರೆ, ಇದು ಬಳಕೆದಾರ ಸ್ನೇಹಿ ಆಗಿರಬಹುದು, ಏಕೆಂದರೆ ಇದು ಪರ್ಫ್‌ಮಾನ್ ಮತ್ತು ಇತರ ETW ಸಾಧನಗಳ ಅಗತ್ಯವಿಲ್ಲದೆ ಓದಲು ಸುಲಭವಾದ ಪಠ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಆದರೆ ಲಾಗ್‌ಫೈಲ್‌ನ ಸ್ವರೂಪವು ಸಂಪೂರ್ಣವಾಗಿ ರಚಿತವಾಗಿಲ್ಲ, ಆದರೆ ಕೆಲವು ಪ್ರಯತ್ನದಿಂದ ಮಾಹಿತಿಯನ್ನು ಬಳಸುವುದು ಇನ್ನೂ ಸಾಧ್ಯವಾಗಿದೆ.

ಲಾಗಿಂಗ್ ಅನ್ನು ಹೇಗೆ ಹೊಂದಿಸಲು

ನಾವು ಆಯ್ಕೆಗಳನ್ನು ಟೇಬಲ್‌ನಲ್ಲಿ ಹೊಂದಿರುವುದರಿಂದ, ಇದನ್ನು ಹೇಗೆ ಹೊಂದಿಸಲು ನೋಡೋಣ. ನಾನು ಹಿಂದಿನಂತೆ, ಪ್ಯಾಕೆಟ್ ಕ್ಯಾಪ್ಚರ್, ಫೈರ್‌ವಾಲ್ ಲಾಗಿಂಗ್ ಅಥವಾ ಇವೆಂಟ್‌ಟ್ರೇಸಿಂಗ್ ಅನ್ನು ಇಲ್ಲಿ ಒಳಗೊಂಡಿಲ್ಲ, ಆದರೆ ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳು ಮತ್ತು ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್ ಅನ್ನು ನೋಡೋಣ.

ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಇವೆಂಟ್‌ಲಾಗ್ ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ

ಹಿಂದೆ ಹೇಳಿದಂತೆ, “ವಿಶ್ಲೇಷಣಾತ್ಮಕ” ಇವೆಂಟ್ ಲಾಗ್ ಡೀಫಾಲ್ಟ್ ಮೂಲಕ ಸಕ್ರಿಯವಾಗಿಲ್ಲ. ಇನ್ನಷ್ಟು, ಇದು ಡೀಫಾಲ್ಟ್ ಮೂಲಕ ಕಾಣಿಸುವುದಿಲ್ಲ. ಮೊದಲು, ಸಂಬಂಧಿತ ಸೇವಾ ಲಾಗ್ ವಿಭಾಗಕ್ಕೆ ಇವೆಂಟ್ ವೀಕ್ಷಕದಲ್ಲಿ ಹೋಗೋಣ.


ಅಲ್ಲಿ, ನೀವು DNS ಸರ್ವರ್‌ಗಾಗಿ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಮತ್ತು ಡಿಬಗ್ ಲಾಗ್‌ಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಅಗತ್ಯವಿದೆ.


ಮರುಭಾಗದಲ್ಲಿ, ಲಾಗ್ ಇನ್ನೂ ನಿಷ್ಕ್ರಿಯವಾಗಿದೆ ಮತ್ತು ಯಾವುದೇ ದಾಖಲಾತಿಗಳನ್ನು ತೋರಿಸುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ನೀವು ಲಾಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಅಗತ್ಯವಿದೆ.


ಕ್ಲಿಕ್-ಆಪ್ಸ್ ಅನ್ನು ಅನುಸರಿಸಲು ಬಯಸದ ಯಾರಿಗಾದರೂ, ಇಲ್ಲಿ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಲಾಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಕಮಾಂಡ್ ಲೈನ್ ಇದೆ:

wevtutil set-log "Microsoft-Windows-DNSServer/Analytical" /e:true

ಲಾಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವ ಮೂಲಕ, ಸರ್ವರ್ ಮಾಹಿತಿಯನ್ನು ಸೆರೆಹಿಡಿಯಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ದಯವಿಟ್ಟು ಗಮನಿಸಿ, ಲಾಗ್‌ನಲ್ಲಿ ಸೆರೆಹಿಡಿಯಲ್ಪಟ್ಟ ಘಟನೆಗಳ ಜೀವಂತ ದೃಶ್ಯವಿಲ್ಲ. ಡೇಟಾ ಸಂಗ್ರಹಣೆಯನ್ನು ಲಾಗ್ ಅನ್ನು ಪುನಃ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವ ಮೂಲಕ ನಿಲ್ಲಿಸಲು ಅಗತ್ಯವಿದೆ, ನಂತರ ನೀವು ಸೆರೆಹಿಡಿಯಲ್ಪಟ್ಟ ಘಟನೆಗಳನ್ನು ನೋಡಬಹುದು.

wevtutil set-log "Microsoft-Windows-DNSServer/Analytical" /e:false


ಮರುಭಾಗದಲ್ಲಿ, ನೀವು ಲಾಗ್‌ನಲ್ಲಿ ಸೆರೆಹಿಡಿಯಲ್ಪಟ್ಟ ಘಟನೆಗಳನ್ನು ನೋಡಬಹುದು:


ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳ ಸ್ವಭಾವದಿಂದಾಗಿ, ಸೆರೆಹಿಡಿಯಲ್ಪಟ್ಟ ಘಟನೆಗಳ ಹೆಚ್ಚು ರಚಿತ ದೃಶ್ಯವನ್ನು ಒದಗಿಸುವ XML ಡೇಟಾ ದೃಶ್ಯವೂ ಲಭ್ಯವಿದೆ. ಇದರಿಂದ ಇವೆಂಟ್‌ಲಾಗ್ ದಾಖಲೆಗಳು ಮೇಲಿನ ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ನ ಪಠ್ಯ ಸಂದೇಶವನ್ನು ಒಳಗೊಂಡಿಲ್ಲ, ಆದರೆ ಬದಲಾಗಿ ವಿಂಡೋಸ್ ಇವೆಂಟ್ ವೀಕ್ಷಕದಲ್ಲಿ ಪಠ್ಯ ಸಂದೇಶವಾಗಿ ಪ್ರದರ್ಶಿತವಾಗುವ ಕಚ್ಚಾ ಡೇಟಾ ರಚನೆಯನ್ನು ಒಳಗೊಂಡಿವೆ.


“ವಿಶ್ಲೇಷಣಾತ್ಮಕ” ಲಾಗ್‌ನಲ್ಲಿ ಘಟನೆಗಳನ್ನು ಇವೆಂಟ್ ವೀಕ್ಷಕದ ಮೂಲಕ ರಫ್ತು ಮಾಡಬಹುದು, ಆದರೆ ನೀವು ಘಟನೆಗಳ ಪ್ರಶ್ನೆ ಮತ್ತು ರಫ್ತು ಮಾಡಲು ಪವರ್‌ಶೆಲ್ ಬಳಸಿದಾಗ ಹೆಚ್ಚು ಲವಚಿಕತೆ ಮತ್ತು ನಿಯಂತ್ರಣವನ್ನು ಪಡೆಯಬಹುದು. ದಾಖಲೆಗಳನ್ನು ಪವರ್‌ಶೆಲ್ ಮೂಲಕವೂ ಪ್ರಶ್ನೆ ಮಾಡಬಹುದು:

# Query the records from the Analytical log
$records = Get-WinEvent -LogName "Microsoft-Windows-DNSServer/Analytical" -Oldest

# Show the first 5 records
$records | Select-Object -First 5 | Format-List

Get-WinEvent ಕಮಾಂಡ್‌ನಲ್ಲಿ ಅಗತ್ಯವಿರುವ ಪ್ಯಾರಾಮೀಟರ್ “-Oldest” ಬಗ್ಗೆ ಗಮನವಿರಲಿ! ನೀವು ಈ ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸದಿದ್ದರೆ, ಕಮಾಂಡ್‌ಲೆಟ್ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಲಾಗ್‌ನಲ್ಲಿ ದೋಷವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ.

ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್ ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ

ಮರುಭಾಗದಲ್ಲಿ, DNS ಡಿಬಗ್ ಲಾಗ್‌ಫೈಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವುದು ಮತ್ತೊಂದು, ಬಹುಶಃ ಬಹಳ ಅಮೂಲ್ಯವಾದ ಆಯ್ಕೆಯಾಗಿದೆ. ಮೇಲಿನಂತೆ, ಇದು ಸುಲಭವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸಲು ಸಾಧ್ಯವಾದ ಪಠ್ಯ ಆಧಾರಿತ ಲಾಗ್‌ಫೈಲ್ ಆಗಿದ್ದು, ಹೆಸರು ಪರಿಹಾರ ಕಾರ್ಯಾಚರಣೆಗಳ ಬಗ್ಗೆ ವಿವರವಾದ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಡಿಬಗ್ ಲಾಗ್ ಸಂರಚನೆಯ ಆಧಾರದ ಮೇಲೆ, ಒದಗಿಸಲಾದ ವಿವರಗಳು ಮೂಲಭೂತ “ಯಾರು ಏನನ್ನು ಕೇಳಿದರು” ರಿಂದ ಬಹಳ, ಬಹಳ ವಿವರವಾದ ಮಾಹಿತಿಯವರೆಗೆ, ಪ್ಯಾಕೆಟ್ ವಿವರಗಳೊಂದಿಗೆ, ಮತ್ತು ಇನ್ನಷ್ಟು.DNS-ನಿರ್ದಿಷ್ಟ opcode ಮತ್ತು ಧ್ವಜಗಳ ಬಗ್ಗೆ.

ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಎರಡು ಮಾರ್ಗಗಳಿವೆ, ಅಥವಾ GUI ಮೂಲಕ ಅಥವಾ PowerShell ಮೂಲಕ.

GUI “windows classical” ಬಹಳ ಸುಲಭವಾಗಿದೆ, ನೀವು DNS ನಿರ್ವಹಕದಲ್ಲಿ “ಡಿಬಗ್ ಲಾಗಿಂಗ್” ವಿಭಾಗದ ಅಂಶಗಳಲ್ಲಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಕಂಡುಹಿಡಿಯಬಹುದು.

ಪ್ರಾಯೋಗಿಕ ಸಲಹೆ: ನೀವು ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು DNS ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದರೆ (ನಾನು ನೀವು ಹೊಂದಿದ್ದೀರಿ ಎಂದು ಊಹಿಸುತ್ತೇನೆ), ನಿಮ್ಮ ಪರಿಸರದಲ್ಲಿ ಸಮಾನವಾದ ಡೇಟಾವನ್ನು ಪಡೆಯಲು ಎಲ್ಲಾ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಒಂದೇ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಬಳಸುವುದು ಉತ್ತಮ ಐಡಿಯಾಗಿದೆ.

ಹೆಚ್ಚಾಗಿ, ನಾನು ಲಾಗ್ ಫೈಲ್ ಹೆಸರಿನಲ್ಲಿ ಸರ್ವರ್‌ನ ಹೆಸರನ್ನು ಸೇರಿಸುವುದನ್ನು ಶಿಫಾರಸುಿಸುತ್ತೇನೆ, ಲಾಗ್ ಡೇಟಾದ ಮೂಲವನ್ನು ಸುಲಭವಾಗಿ ಗುರುತಿಸಲು.

GUI ಬಳಕೆದಾರ ಸ್ನೇಹಿ ಮತ್ತು ಸುಲಭವಾಗಿರುವುದಾಗಿ ತೋರುವುದಾದರೂ, ಇದರಲ್ಲಿ ಕೆಲವು ದುರ್ಬಲತೆಗಳು ಮತ್ತು ದುರ್ಬಲತೆಗಳಿವೆ. ವಾಸ್ತವವಾಗಿ, ಇದು ಸಂಪೂರ್ಣ ಶ್ರೇಣಿಯ ಕಾನ್ಫಿಗರೇಶನ್ ಆಯ್ಕೆಗಳನ್ನು ಒದಗಿಸುವುದಿಲ್ಲ, ಮತ್ತು ನೀವು ಕೆಲವು ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದರೆ ಇದು ಅಷ್ಟು ವಿಸ್ತಾರಗೊಳ್ಳುವುದಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, ನೀವು 10 ಅಥವಾ ಹೆಚ್ಚು ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಬಯಸಿದರೆ, ನೀವು ಎಲ್ಲಾ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಒಂದೇ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಮತ್ತು ಸರಿಯಾದ ಬರವಣಿಗೆಗಳನ್ನು ಪುನರಾವೃತ್ತವಾಗಿ ಮಾಡಲು ಬಹಳ ಗಮನ集中ಗೊಳ್ಳಬೇಕಾಗಿದೆ. ನಾಲ್ಕಕ್ಕಿಂತ ಹೆಚ್ಚು ಸಂಖ್ಯೆಗಳಾಗಿದ್ದರೆ, ನಾನು ಸಾಮಾನ್ಯವಾಗಿ “Dev-Ops” ವಿಧಾನವನ್ನು “Click-Ops” ಮಾರ್ಗಕ್ಕಿಂತ ಹೆಚ್ಚು ಇಷ್ಟಪಡುತ್ತೇನೆ.

ನನ್ನ ಸ್ವಂತ ಮಾನವ ಆಲಸ್ಯ ಮತ್ತು ಪುನರಾವೃತ್ತ ಕಾರ್ಯಗಳಲ್ಲಿ ಶುದ್ಧತೆಯ ದೋಷಗಳಿಂದ ನನ್ನ ಅನುಭವವು ನನಗೆ ಕಲಿತಿದೆ: PowerShell ಹಾದಿಯಾಗಿದೆ

ಹೀಗಾಗಿ, ಆಶ್ಚರ್ಯವಿಲ್ಲ, DNS ಸರ್ವರ್‌ಗಳಿಗೆ ಡಿಬಗ್ ಲಾಗ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು “ಪಡೆಯಲು” ಮತ್ತು “ಸೆಟ್ಗೆ” PowerShell cmdlets ಲಭ್ಯವಿವೆ:

# Get the settings of the DNS Server Debug Log
Get-DnsServerDiagnostic

# Set the settings of the DNS Server Debug Log
Set-DnsServerDiagnostic

Get ಕಮಾಂಡ್ GUI ಯಲ್ಲಿನ ಎಲ್ಲಾ ಆಯ್ಕೆಗಳನ್ನು ಮತ್ತು GUI ಯಲ್ಲಿಲ್ಲದ ಕೆಲವು ಹೆಚ್ಚುವರಿ ಆಯ್ಕೆಗಳನ್ನು, ಲಾಗ್‌ಗಾಗಿ ರೋಲ್ ಓವರ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಮತ್ತು ಡಿಬಗ್ ಲಾಗ್‌ಗೆ ಹೆಚ್ಚು DNS ಸರ್ವರ್ ನಿರ್ದಿಷ್ಟ ಆಂತರಿಕ ಕಾರ್ಯಾಚರಣಾ ಮಾಹಿತಿಯನ್ನು ಸೇರಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ.

DNS Server Debug Log Settings via PowerShell

ಮಹತ್ವಪೂರ್ಣ: “MaxMBFileSize” ಗುಣಲಕ್ಷಣವು ಫೈಲ್ ಗಾತ್ರವನ್ನು MB ಯಲ್ಲಿ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ ಎಂದು ಸೂಚಿಸುತ್ತಿದ್ದರೂ, ಇದು ವಾಸ್ತವವಾಗಿ ಬೈಟ್ಸ್‌ನಲ್ಲಿ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ. ಆದ್ದರಿಂದ, ನೀವು 10MB ಗಾತ್ರವನ್ನು ಹೊಂದಿಸಲು ಬಯಸಿದರೆ, ನೀವು ಮೌಲ್ಯವನ್ನು 10485760 (10 * 1024 * 1024) ಗೆ ಹೊಂದಿಸಬೇಕು.

“LogFilePath” ಗೆ ಹೆಸರಿನ ಅಂತಿಮ ಅಕ್ಷರವನ್ನು ಗಮನಿಸಿ!
ನಾನು ಚೆನ್ನಾದ ಫೈಲ್ ಹೆಸರುಗಳನ್ನು ಹೊಂದಲು ಮತ್ತು “EnableLogFileRollover” ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಬಯಸುತ್ತೇನೆ, ಲಾಗ್ ಫೈಲ್ ಹೆಸರಿನಲ್ಲಿ ಅಂಡರ್‌ಸ್ಕೋರ್ ಇದೆ. ಸರ್ವರ್ ಲಾಗ್ ಅನ್ನು ರಚಿಸುವಾಗ ನೀಡಲಾದ ಫೈಲ್ ಹೆಸರಿನ ನಂತರ ಟೈಮ್‌ಸ್ಟ್ಯಾಂಪ್ ಅನ್ನು ಸೇರಿಸುತ್ತದೆ. ಈ ವಿಧಾನದಿಂದ, ನಾನು ಸರ್ವರ್‌ಗಳ ಹೆಸರಿನ ಮತ್ತು ಟೈಮ್‌ಸ್ಟ್ಯಾಂಪ್‌ ನಡುವಿನ ಸ್ಪಷ್ಟ ವಿಭಜನೆಯೊಂದಿಗೆ ಹೊಂದಿದ್ದೇನೆ.

ಕೆಳಗಿನ ಚಿತ್ರವು ಫೈಲ್ ಹೆಸರಿನಲ್ಲಿ “EnableLogFileRollover” ಗುಣಲಕ್ಷಣದ ವಿಭಿನ್ನ ವರ್ತನೆಯನ್ನು ತೋರಿಸುತ್ತದೆ:


ಮಹತ್ವಪೂರ್ಣ: ರೋಲ್ ಓವರ ಪ್ರಕ್ರಿಯೆಯ ವರ್ತನೆಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಸಹ ಅತ್ಯಂತ ಮಹತ್ವಪೂರ್ಣವಾಗಿದೆ. ಒಟ್ಟಾರೆ ಲಾಗ್ ಗಾತ್ರದ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಲ್ಲ! ಅಂದರೆ, ರೋಲ್ ಓವರ ಸಕ್ರಿಯಗೊಳಿಸಿದಾಗ, ನಿರ್ದಿಷ್ಟವಾದ MaxMBFileSize ತಲುಪಿದಾಗ ಸರ್ವರ್ ಪ್ರತಿಯೊಮ್ಮೆ ಹೊಸ ಫೈಲ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ, ಆದರೆ ರಚಿಸಲಾಗಬಹುದಾದ ಫೈಲ್‌ಗಳ ಸಂಖ್ಯೆಗೆ ಯಾವುದೇ ಮಿತಿಯಿಲ್ಲ.

ಅಂದರೆ, ನೀವು ಲಾಗ್ ಫೈಲ್‌ಗಳನ್ನು ಮತ್ತು ನಿಮ್ಮ ಸರ್ವರ್‌ನಲ್ಲಿ ಖಾಲಿ ಸ್ಥಳವನ್ನು ನೋಡಿಕೊಳ್ಳಬೇಕು!

ನೀವು “ಸೆಟ್-ಆಂಡ್-ಫರ್ಗೆಟ್” ವಿಧಾನದಿಂದ ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿದರೆ, ಮತ್ತು ನಿಮ್ಮ ಸರ್ವರ್‌ನಲ್ಲಿ ಉತ್ಪಾದಕ ಲೋಡ್ ಇದ್ದರೆ, ನೀವು ನಿಮ್ಮ ಡಿಸ್ಕ್ ಅನ್ನು ತುಂಬಬಹುದು. ಕೇಳುವ ಪ್ರಮಾಣ ಮತ್ತು ವಿವರಗಳ ಮಟ್ಟವನ್ನು ಆಧರಿಸಿ, ನೀವು ಬಹಳಷ್ಟು DNS-ಗ್ರಾಹಕರಿದ್ದರೆ, ಇದು ದಿನಕ್ಕೆ ಹಲವಾರು ಗಿಗಾಬೈಟ್ಗಳಷ್ಟು ಇರಬಹುದು.

ಮರುಕಟ್ಟಾಗಿ, ಇಲ್ಲಿ ಸೆಟ್-ಆಂಡ್-ಫರ್ಗೆಟ್ ಮಾಡಬೇಡಿ!

ನೀವು ಲಾಗ್ ಫೈಲ್‌ಗಳಿಗೆ ನೋಡಿಕೊಳ್ಳಲು ನಿಮ್ಮದೇ ಆದ ತಂತ್ರವನ್ನು ಹೊಂದಬೇಕು. ಸ್ವಯಂಚಾಲಿತ ಕ್ಲೀನಪ್ ಇಲ್ಲ.

PowerShell ಮೂಲಕ ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ನೀವು ಹೇಗೆ ಮಾಡಬಹುದು ಎಂಬುದಕ್ಕೆ ಉದಾಹರಣೆ ಇಲ್ಲಿದೆ:

# Specify the desired DNS Server Debug Logging Parameters
$dnsDebugLogParameter = @{
    "Queries"                              = $true
    "Answers"                              = $true
    "Notifications"                        = $true
    "Update"                               = $true
    "QuestionTransactions"                 = $true
    "UnmatchedResponse"                    = $true
    "SendPackets"                          = $true
    "ReceivePackets"                       = $true
    "TcpPackets"                           = $true
    "UdpPackets"                           = $true
    "FullPackets"                          = $false
    "FilterIPAddressList"                  = $null
    "EventLogLevel"                        = 4
    "UseSystemEventLog"                    = $false
    "EnableLoggingToFile"                  = $true
    "EnableLogFileRollover"                = $true
    "LogFilePath"                          = "C:\Administration\Logs\DNSServer\DnsDebugLog_$($env:COMPUTERNAME).$((Get-CimInstance -ClassName "win32_computersystem").Domain)_.log"
    "MaxMBFileSize"                        = (10 * 1mb)
    "SaveLogsToPersistentStorage"          = $false
    "WriteThrough"                         = $false
    "EnableLoggingForLocalLookupEvent"     = $false
    "EnableLoggingForPluginDllEvent"       = $false
    "EnableLoggingForRecursiveLookupEvent" = $false
    "EnableLoggingForRemoteServerEvent"    = $false
    "EnableLoggingForServerStartStopEvent" = $false
    "EnableLoggingForTombstoneEvent"       = $false
    "EnableLoggingForZoneDataWriteEvent"   = $false
    "EnableLoggingForZoneLoadingEvent"     = $false
}

# Apply the defined settings
Set-DnsServerDiagnostics @dnsDebugLogParameter

ಮುಂದಿನ ಅಧ್ಯಾಯದಲ್ಲಿ, ನಾನು “ಉತ್ಪಾದಿತ ಡಿಬಗ್ ಲಾಗ್‌ಗಳಿಂದ ಮಾಹಿತಿಯನ್ನು ಹೇಗೆ ಬಳಸುವುದು” ಎಂಬುದರ ಬಗ್ಗೆ ನನ್ನ ಆಲೋಚನೆಗಳನ್ನು ನೋಡುತ್ತೇವೆ. ಅಲ್ಲಿ, ನಾನು Windows ಸೇವೆಯ ಮೂಲಕ ರಚಿತ ಡಿಬಗ್ ಲಾಗ್‌ಗಳನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ನನ್ನ ಸ್ವಂತ PowerShell ಮೋಡ್ಯೂಲ್ DNSServer.DebugLogParser ಅನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತೇನೆ.
ಮೋಡ್ಯೂಲ್ PowerShell ಗ್ಯಾಲರಿಯಲ್ಲಿ ಲಭ್ಯವಿದೆ, ಮತ್ತು ನನ್ನ GitHub ಖಾತೆ ನಲ್ಲಿ. GitHub ರೆಪೊಸಿಟರಿಯಲ್ಲೂ ಡೊಮೇನ್ ಪರಿಸರದಲ್ಲಿ ಬಳಸುವ ಮಾರ್ಗದರ್ಶಿಯೊಂದಿಗೆ ಹೆಚ್ಚುವರಿ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಇದೆ. ಅಲ್ಲಿ ನೀವು ನಿಮ್ಮ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಬಳಸಬಹುದಾದ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಕಂಡುಹಿಡಿಯಬಹುದು.

ಲೇಖನದ ಗಮನಕ್ಕೆ, ನಾನು ಸಂಭವನೀಯ ಉತ್ಪಾದನಾ ಪರಿಸರದಲ್ಲಿ ಕಾರ್ಯಾಚರಣೆಯ ವಿವರಗಳ ಬಗ್ಗೆ ಹೆಚ್ಚು ವಿವರವಾಗಿ ಹೋಗುವುದಿಲ್ಲ. ನೀವು ಇಂತಹ ಲಾಗ್‌ಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವ ಮೊದಲು ಹೆಚ್ಚುವರಿ ತಂತ್ರಗಳ ಬಗ್ಗೆ ಗಮನ ನೀಡಬೇಕೆಂದು ನಾನು ಮೇಲಿನಲ್ಲೇ ಸ್ಪಷ್ಟವಾಗಿ ಹೇಳಿದ್ದೇನೆ.

ಡೇಟಾ ಬಳಕೆ

ಸರಿಯಾಗಿದೆ, ಮೇಲಿನಂತೆ ನೀವು ನಿಮ್ಮ ವಿವಿಧ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಡೇಟಾ ಹೊಂದಿದ್ದೀರಿ. ಇದು ನಿಮ್ಮ ಸುತ್ತಲೂ ಕಸವನ್ನು ಹರಡುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತದೆ. ಮುಂದಿನ ಹಂತದಲ್ಲಿ, ನೀವು ಡೇಟಾವನ್ನು ಬಳಸುವ ಪ್ರಕ್ರಿಯೆಯ ಬಗ್ಗೆ ಗಮನ ನೀಡಬೇಕಾಗಿದೆ ಮತ್ತು ಬಹುಶಃ ಅದನ್ನು ಕೇಂದ್ರ ಸ್ಥಳಕ್ಕೆ ತರುವುದಾಗಿದೆ.

ಖಂಡಿತವಾಗಿಯೂ, PowerShell ನಿಮ್ಮನ್ನು ಈ ಮಾರ್ಗದಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ ಎಂಬುದಕ್ಕೆ ನಿಮಗೆ ಆಶ್ಚರ್ಯವಿಲ್ಲ.

ಘಟನೆಗಳ ಲಾಗ್‌ಗಳು

ಮೇಲಿನಂತೆ, “ವಿಶ್ಲೇಷಣಾತ್ಮಕ” ಘಟನೆಗಳ ಲಾಗ್ ತ್ವರಿತ ಸಮಸ್ಯೆ ಪರಿಹಾರಕ್ಕಾಗಿ ಬಹಳ ಉಪಯುಕ್ತವಾಗಿರಬಹುದು. ನಾವು ಹಿಂದಿನ ವಿಭಾಗಗಳಲ್ಲಿ ಏನು ಮತ್ತು ಏಕೆ ಎಂಬುದರ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತಿದ್ದಾಗ, ಇಲ್ಲಿದೆ ತ್ವರಿತ ಸಮಸ್ಯೆ ಪರಿಹಾರ ಅಧಿವೇಶನಕ್ಕೆ ಉದಾಹರಣೆ. ಇದು “ಅಯ್ಯೋ, ನಿಮ್ಮ DNS ಸರ್ವರ್ ‘xyz’ ಅನ್ನು ಕೇಳಿದಾಗ ಏನೂ ಹಿಂದಿರುಗಿಸುತ್ತಿಲ್ಲ. ಏನು ನಡೆಯುತ್ತಿದೆ!” ಎಂಬ ಸಮಸ್ಯೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಉಪಯುಕ್ತವಾಗಬಹುದು.

ಕೆಳಗಿನ ಉದಾಹರಣೆ ನೀವು ನಿರ್ವಹಣಾ ಕಾರ್ಯಸ್ಥಾನದಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತೀರಿ ಮತ್ತು ನಿಮ್ಮ ಸರ್ವರ್‌ಗಳನ್ನು ದೂರದಿಂದ ನಿರ್ವಹಿಸಲು ಸೂಕ್ತ ಫೈರ್‌ವಾಲ್ ನೀತಿಗಳನ್ನು ಹೊಂದಿದ್ದೀರಿ ಎಂದು ಊಹಿಸುತ್ತದೆ. ನೀವು ನೇರವಾಗಿ ಸರ್ವರ್‌ನಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದರೆ, ನೀವು ಕಮಾಂಡ್‌ಗಳಲ್ಲಿ “-ComputerName” ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಸರಳವಾಗಿ ಬಿಟ್ಟುಬಿಡಬಹುದು ಅಥವಾ “-ScriptBlock” ಪ್ಯಾರಾಮೀಟರ್‌ನಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ನೇರವಾಗಿ ಬಳಸಬಹುದು.

ಮೊದಲು, ನಾವು ಕೇಳುವ ಸರ್ವರ್‌ಗಳನ್ನು ನಿರ್ಧರಿಸಲು ಕೆಲವು ಚರಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸೋಣ:

$Server = "DC01"

ನೀವು ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಸರ್ವರ್‌ಗಳನ್ನು ನೇರವಾಗಿ ನಿರ್ಧರಿಸಬಹುದು.

ಈಗ, ನಾವು ಯಾವ ಸರ್ವರ್‌ಗಳನ್ನು ಗಮನಿಸುತ್ತೇವೆ ಎಂದು ಘೋಷಿಸಿದ ನಂತರ, ನಾವು ಆ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಲಾಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಬಹುದು. ಇದು ಮಾಡಿದ ನಂತರ, ಕೆಲವು ಸಮಯ ಕಾಯಿರಿ ಅಥವಾ ಸಮಸ್ಯೆಯನ್ನು ಪುನರಾವೃತ್ತಗೊಳಿಸಿ, ನಂತರ ಲಾಗ್ ಅನ್ನು ಮತ್ತೆ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ.

# Enable the analytical log
Invoke-Command -ComputerName $Server -ScriptBlock {
    wevtutil.exe set-log "Microsoft-Windows-DNSServer/Analytical" /e:true /q
}

# Wait for some time to gather data

# Disable the analytical log
Invoke-Command -ComputerName $Server -ScriptBlock {
    wevtutil.exe set-log "Microsoft-Windows-DNSServer/Analytical" /e:false
}

ಮುಂದಿನ ಹಂತದಲ್ಲಿ, ಲಾಗ್‌ನ ದಾಖಲೆಗಳನ್ನು ಹಿಡಿಯಿರಿ. ಡೇಟಾದ ಪ್ರಮಾಣವನ್ನು ಆಧರಿಸಿ, ಇದು ಕೆಲವು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು, ಆದ್ದರಿಂದ ಸಹನಶೀಲರಾಗಿರಿ. ಘಟನೆಗಳನ್ನು ಹಿಡಿದ ನಂತರ, ಡೇಟಾವನ್ನು ಹೆಚ್ಚು ಬಳಸುವಂತೆ ಮಾಡಲು ಕೆಲವು ಕೆಲಸ ಮಾಡಬೇಕಾಗಿದೆ.
ನಾನು ಘಟನೆಗಳ ಲಾಗ್ ದಾಖಲೆಗಳ Message ಗುಣಲಕ್ಷಣವನ್ನು ವಿವರಗಳನ್ನು ತೆಗೆದುಹಾಕಲು ಬಳಸುತ್ತಿದ್ದೇನೆ, ಏಕೆಂದರೆ ಇದು ಈಗಾಗಲೇ ValueNames ಅನ್ನು ಹೊಂದಿದೆ. ಆದರೆ, Properties ಗುಣಲಕ್ಷಣವೂ ಇದೆ (🤭 ಇದನ್ನು ಬರೆಯುವಾಗ, ಇದು 🤪 ಕಾರ್ಯಕ್ರಮದ ವಿಷಯವಾಗಿದೆ) ಎಲ್ಲಾ ಮೌಲ್ಯಗಳ ಪಟ್ಟಿಯೊಂದಿಗೆ ಆದರೆ PropertyNames ಇಲ್ಲ. ನೀವು .Properties ಗುಣಲಕ್ಷಣದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಇಚ್ಛಿಸಿದರೆ, ನೀವು ಮೌಲ್ಯಗಳನ್ನು ಬಳಸುವ ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿ ಪಡೆಯಲು ಇನ್ನಷ್ಟು ಕೆಲಸ ಮಾಡಬೇಕಾಗುತ್ತದೆ, ಇದು ಸ್ಥಳೀಯೀಕರಣ ಮತ್ತು ವಿಭಿನ್ನ Windows ಆವೃತ್ತಿಗಳ ನಡುವೆ ಹೆಚ್ಚು ಶಕ್ತಿಯುತ ಸಮ್ಮಿಲನವನ್ನು ನೀಡುತ್ತದೆ…

# Get the EventLog records out of the server(s)
$records = Get-WinEvent -ComputerName $Server -LogName "Microsoft-Windows-DNSServer/Analytical" -Oldest | Where-Object Providername -ne ""

# Process the records to enrich the data
$propNames = @("MachineName", "LogName", "TimeCreated", "LevelDisplayName", "RecordId", "Message", "ProviderName", "Id", "Version", "Level", "Task", "Opcode", "Keywords", "ProviderId", "ProcessId", "ThreadId", "ContainerLog", "OpcodeDisplayName", "TaskDisplayName")
$dataRecords = foreach ($record in $records) {
    $hash = [ordered]@{}
    
    $propNames | ForEach-Object { $hash[$_] = $record.$_}
    $record.Message.split(";").trim() | ForEach-Object { $pair = $_.split("="); $hash[$pair[0].replace(":", "").trim()] = $pair[1].trim() }
    
    [PSCustomObject]$hash
    
}

ಈಗ, ನಾವು ಡೇಟಾವನ್ನು ಹೆಚ್ಚು ಬಳಸುವಂತೆ ಹೊಂದಿಸಿದ್ದೇವೆ, ನಾವು ಏನನ್ನು ಬೇಕಾದರೂ ಮಾಡಬಹುದು ಇದನ್ನು.
ನಾವು ಇದನ್ನು ಪ್ರದರ್ಶಿಸಬಹುದು, ರಫ್ತು ಮಾಡಬಹುದು ಅಥವಾ ಇದಕ್ಕೆ ಸಂಬಂಧಿಸಿದಂತೆ ಕೆಲವು ನೇರ PowerShell ವಿಶ್ಲೇಷಣೆಗಳನ್ನು ಮಾಡಬಹುದು.

ಇಲ್ಲಿ ಕೆಲವು ಉದಾಹರಣೆಗಳಿವೆ:

# ಡೇಟಾವನ್ನು ಪ್ರದರ್ಶಿಸಿ
$dataRecords | Format-Table

$dataRecords | Out-GridView

$dataRecords | Select-Object -First 1 | Format-List

ಕಚ್ಚಾ Format-Table ಬಹಳಷ್ಟು ಮೌಲ್ಯವಂತವಾಗಿರದಿರಬಹುದು, ಏಕೆಂದರೆ ಕಾನ್ಸೋಲ್ ಔಟ್‌ಪುಟ್ ಅನ್ನು ವೃತ್ತಾಕಾರಗೊಳಿಸುತ್ತದೆ. Out-GridView ಸ್ವಲ್ಪ ಹೆಚ್ಚು ಬಳಕೆದಾರ ಸ್ನೇಹಿ, ಏಕೆಂದರೆ ಇದು ಸ್ಕ್ರೋಲಿಂಗ್ ಮತ್ತು ಶ್ರೇಣೀಬದ್ಧಗೊಳಿಸುವ ಟೇಬಲ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ. Format-List ಬಳಸಿ, ನೀವು ಒಬ್ಬ ವ್ಯಕ್ತಿಯ ವಿವರಗಳನ್ನು ನೋಡಬಹುದು, ಇದು ನೀವು ಮುಂದಿನ ವಿಶ್ಲೇಷಣೆಯಲ್ಲಿ ಯಾವ ಗುಣಲಕ್ಷಣವನ್ನು ಹುಡುಕಬೇಕು ಮತ್ತು ಗುಂಪು ಮಾಡಬೇಕು ಎಂಬ ಮಾಹಿತಿಯನ್ನು ನೀಡುತ್ತದೆ.

# ಇತರ ಉಪಕರಣಗಳಲ್ಲಿ ಬಳಸಲು ಡೇಟಾವನ್ನು CSV ಗೆ ರಫ್ತು ಮಾಡಿ, ಉದಾಹರಣೆಗೆ Excel, PowerBI ಅಥವಾ ನೀವು ಇಷ್ಟಪಡುವುದೇನಾದರೂ
$dataRecords | Export-Csv -Path "DNSServer-Analytics.csv" -Delimiter ";" -Encoding UTF8 -NoTypeInformation

CSV ಗೆ ರಫ್ತು ಮಾಡುವುದು ಮತ್ತು ಅದನ್ನು Excel ಗೆ ಕರೆದೊಯ್ಯುವುದು ಬಹಳಷ್ಟು ಪ್ರಕರಣಗಳಿಗೆ ಸಾಮಾನ್ಯವಾಗಿ ಸುಲಭವಾಗಿದೆ, ಏಕೆಂದರೆ ಇದು ಡೇಟಾವನ್ನು ಕತ್ತರಿಸಲು ಮತ್ತು ತುಂಡು ಮಾಡಲು ಇತರ ಉಪಕರಣಗಳ ಶಕ್ತಿಯನ್ನು ನೀಡುತ್ತದೆ.

ಮರುಭಾಗದಲ್ಲಿ, ನೀವು ತುರ್ತು ಕರೆ ವೇಳೆ PowerShell ನಲ್ಲಿ ನೇರವಾಗಿ ಕೆಲವು ತ್ವರಿತ ಮತ್ತು ಕಚ್ಚಾ ವಿಶ್ಲೇಷಣೆಗಳನ್ನು ಮಾಡಲು ಇಚ್ಛಿಸುತ್ತಿದ್ದರೆ, ಇದು ಕೂಡ ಸಾಧ್ಯವಾಗಿದೆ. ಇಲ್ಲಿವೆ ಕೆಲವು ಆಲೋಚನೆಗಳು:

# ಕತ್ತರಿಸಿ ಮತ್ತು ತುಂಡು ಮಾಡಿ... ಡೇಟಾದಿಂದ ನೇರವಾಗಿ PowerShell ನಲ್ಲಿ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಿರಿ ಮೂಲ ಗುಂಪು ಮಾಡುವ ಮೂಲಕ
$dataRecords | Group-Object TaskDisplayName
$dataRecords | Group-Object QNAME
$dataRecords | Group-Object InterfaceIP
$dataRecords | Group-Object Source

# ಕೆಲವು ಹೆಚ್ಚು ಉನ್ನತ ಗುಂಪು ಮಾಡುವ ಉದಾಹರಣೆಗಳು
$dataRecords | Group-Object { "Source '$($_.Source)' on Interface '$($_.InterfaceIP)'" } | Format-Table Count, Name
$dataRecords | Group-Object { "Source '$($_.Source)' on Interface '$($_.InterfaceIP)' with '$($_.QNAME)'" } | Sort-Object Name | Format-Table Count, Name
$dataRecords | Group-Object { "'$($_.QNAME)' - Source '$($_.Source)' ($($_.TaskDisplayName))" } | Sort-Object Name | Format-Table Count, Name
$dataRecords | Group-Object { "'$($_.QNAME)' - Source '$($_.Source)' on Interface '$($_.InterfaceIP)' ($($_.TaskDisplayName))" } | Sort-Object Name | Format-Table Count, Name

# ಗುಂಪು ಮಾಡುವುದನ್ನು ಶೋಧನೆಯೊಂದಿಗೆ ಸಂಯೋಜಿಸುವುದು
$dataRecords | Where-Object TaskDisplayName -like "LOOK_UP" | Group-Object { "Source '$($_.Source)' - '$($_.QNAME)'" } | Sort-Object Name | Format-Table Count, Name

# ಮೂಲ ಗುಂಪು ಮಾಡುವುದರಿಂದ ಸಾಧ್ಯವಾದ ಮೌಲ್ಯಗಳನ್ನು ಅನ್ವೇಷಿಸಿದ ನಂತರ, ನಾವು ದಾಖಲೆಗಳನ್ನು ಅವರ ವಿವರಗಳೊಂದಿಗೆ ಶೋಧಿಸಬಹುದು
$dataRecords | Where-Object TaskDisplayName -like "LOOK_UP" | Where-Object Source | Sort-Object TimeCreated | Format-Table MachineName, TimeCreated, Source, InterfaceIP, QNAME, QTYPE
$dataRecords | Where-Object TaskDisplayName -like "LOOK_UP" | Where-Object Source -like "10.1.1.1" | Sort-Object QNAME | Format-Table MachineName, TimeCreated, Source, InterfaceIP, QNAME, QTYPE

ಇದನ್ನು ತೋರಿಸುವ ಮೂಲಕ, ನಾನು ನಿಮಗೆ ಡೇಟಾದಿಂದ ಒಳನೋಟಗಳನ್ನು ಪಡೆಯುವ ಮತ್ತು PowerShell ಅನ್ನು ಬಳಸುವ ಬಗ್ಗೆ ಕೆಲವು ಆಲೋಚನೆಗಳನ್ನು ನೀಡಲು ಆಶಿಸುತ್ತೇನೆ.
ಖಂಡಿತವಾಗಿ, ಇನ್ನಷ್ಟು ಆಯ್ಕೆಗಳು ಲಭ್ಯವಿವೆ ಮತ್ತು ಇದು ಬಹಳ ದೊಡ್ಡ ಡೇಟಾಸೆಟ್‌ಗಳಿಗೆ ಅಥವಾ ದೀರ್ಘಾವಧಿಯ ಕಾಲಾವಧಿಗಳಿಗೆ ವಿಸ್ತಾರಗೊಳ್ಳುವುದಿಲ್ಲ. ಆದ್ದರಿಂದ, ಮುಂದಿನ ಅಧ್ಯಾಯವನ್ನು ನೋಡೋಣ…

DebugLogFile

DNS ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ ಆಯ್ಕೆಯನ್ನು ಗಮನಿಸುವುದು ನಿರ್ಲಕ್ಷಿತ ಮತ್ತು ದೀರ್ಘಕಾಲದ ವಿಧಾನವನ್ನು ನಿರ್ವಹಿಸಲು ಪರಿಹಾರವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದು ದೊಡ್ಡ ಪರಿಸರಗಳಲ್ಲಿ ದೊಡ್ಡ ಡೇಟಾಸೆಟ್‌ಗಳಿಗೆ ಉತ್ತಮವಾಗಿ ವಿಸ್ತಾರಗೊಳ್ಳಬಹುದು. ಫೈಲ್ ಸ್ವಯಂ ಪಠ್ಯಾಧಾರಿತವಾಗಿದೆ, ಆದ್ದರಿಂದ ಇದನ್ನು Notepad ನಲ್ಲಿ ತೆರೆಯುವುದರಿಂದ ಓದಬಹುದು. DNS ಸರ್ವರ್ ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್ Notepad ನಲ್ಲಿ

ದುರದೃಷ್ಟವಶಾತ್, ಸ್ವರೂಪವು ಸಂಪೂರ್ಣವಾಗಿ ರಚಿತವಾಗಿಲ್ಲ, ಆದ್ದರಿಂದ ಡೇಟಾವನ್ನು ಹೆಚ್ಚು ಬಳಸಬಹುದಾದ ಸ್ವರೂಪಕ್ಕೆ ಪಡೆಯಲು ಕೆಲವು ಡೇಟಾ ಪ್ರಕ್ರಿಯೆಗೊಳ್ಳಬೇಕಾಗಿದೆ. ಆದ್ದರಿಂದ, ನಾವು ಹಿಂದಿನಂತೆ ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳನ್ನು ಬಳಸಿದಂತೆ, PowerShell ಗೆ ಹೋಗಿ ಕೆಲವು ಪಾರ್ಸಿಂಗ್ ಮಾಯಾಜಾಲವನ್ನು ಮಾಡೋಣ.


ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್‌ನ ಸ್ವರೂಪದ ಕುರಿತು ಕೆಲವು ಸಂಶೋಧನೆ ಮತ್ತು AI ಕೆಲಸವನ್ನು ಮಾಡುವಾಗ, ಹಾಸ್ಯವಾಗಿ, AI ಸುಲಭವಾದ ಪಾರ್ಸಿಂಗ್‌ಗಾಗಿ ಸ್ವರೂಪವು ಸಂಪೂರ್ಣವಾಗಿ ರಚಿತವಾಗಿಲ್ಲ ಎಂದು ದೂರವಾಣಿ ಮಾಡಿತು. 🤪


ಈ ಸವಾಲನ್ನು ಎದುರಿಸಲು, ನಾನು DNSServer.DebugLogParser ಎಂದು ಕರೆಯುವ PowerShell ಮೋಡ್ಯೂಲ್ ಅನ್ನು ರಚಿಸಿದ್ದೇನೆ.
ಈ ಮೋಡ್ಯೂಲ್ ಒಟ್ಟಾರೆ ಪಾರ್ಸಿಂಗ್ ತತ್ವವನ್ನು ಒದಗಿಸುತ್ತದೆ ಒಂದು cmdlet ಒಳಗೆ. ಇದು “ಅಷ್ಟು ಪಾರ್ಸಿಂಗ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲದ ಲಾಗ್‌ಫೈಲ್” ಅನ್ನು ಮಾನ್ಯ ಮತ್ತು ಬಳಸಲು ಸುಲಭವಾದ CSV ಫೈಲ್ ಗೆ ಪರಿವರ್ತಿಸಲು “ಒಂದು-ನಿಲ್ಲುವ-ಅಂಗಸಾಧನೆ” ಆಗಿದೆ. ಮೋಡ್ಯೂಲ್ ಎಲ್ಲಾ ಅಗತ್ಯ ಹಂತಗಳನ್ನು ನೋಡಿಕೊಳ್ಳುತ್ತದೆ. GitHub repository of the module ನಲ್ಲಿ assets folder ನಲ್ಲಿ ನೀವು ಕೆಲವು ಉದಾಹರಣಾ ಲಾಗ್ ಫೈಲ್‌ಗಳನ್ನು ಮತ್ತು ಅವುಗಳ ಪರಿವರ್ತಿತ CSVಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಕಾಣಬಹುದು. ಖಂಡಿತವಾಗಿ, ನೀವು ಮತ್ತು ನಿಮ್ಮ ಪರಿಸರದಿಂದ ನಿಮ್ಮದೇ ಆದ ಫೈಲ್‌ಗಳನ್ನು ಬಳಸಬಹುದು!

ಹೀಗಾಗಿ, ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್ ಅನ್ನು CSV ಫೈಲ್ ಗೆ ಪರಿವರ್ತಿಸಲು ಮೋಡ್ಯೂಲ್ ಅನ್ನು ಬಳಸುವ ಕುರಿತು ನಿಮಗೆ ತ್ವರಿತ ಉದಾಹರಣೆಯನ್ನು ನೀಡಲು, ಇಲ್ಲಿದೆ:

# ಮೋಡ್ಯೂಲ್ ಅನ್ನು ಆಮದು ಮಾಡಿ (ನೀವು ಇದನ್ನು ಮೊದಲು ಸ್ಥಾಪಿಸಲು ಖಚಿತವಾಗಿರಿ)
Import-Module DNSServer.DebugLogParser

# ಡಿಬಗ್‌ಲಾಗ್‌ಫೈಲ್ ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಿ ಮತ್ತು CSV ಗೆ ರಫ್ತು ಮಾಡಿ
Convert-DNSDebugLogFile "DnsDebugLog_DC01.log"

ಈ ಕ್ರಿಯೆಯನ್ನು ಆಜ್ಞೆಯ ಎಲ್ಲಾ ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳೊಂದಿಗೆ ಮಾಡಿದಾಗ, ನೀವು ಪರಿವರ್ತನೆ ಪ್ರಕ್ರಿಯೆಯಿಂದ 3 CSV ಫೈಲ್‌ಗಳನ್ನು ಔಟ್‌ಪುಟ್‌ವಾಗಿ ಪಡೆಯುತ್ತೀರಿ.

ಫೈಲ್ವಿವರಣೆ
DnsDebugLog_DC01.csvಇದು CSV ಶ್ರೇಣಿಯ ಸ್ವರೂಪದಲ್ಲಿ ಅದರ ವಿವರಗಳೊಂದಿಗೆ ಪರಿವರ್ತಿತ ಲಾಗ್‌ಫೈಲ್
DnsDebugLog_DC01_Statistic.csvಲಾಗ್‌ನಲ್ಲಿ ಪ್ರತಿದಿನವೂ ದಾಖಲೆಗಳ ಎಲ್ಲಾ ಪ್ರಕಾರಗಳಿಗೆ ಸಮಾರೋಪಣೆಯೊಂದಿಗೆ ಅಂಕಿಅಂಶಗಳ CSV
DnsDebugLog_DC01_PacketStatistic.csv“ಪ್ಯಾಕೆಟ್” ಪ್ರಕಾರಕ್ಕೆ ಅಂಕಿಅಂಶಗಳ CSV ಮತ್ತು ಪ್ರತಿದಿನವೂ ಎಲ್ಲಾ ಕ್ಲೈಂಟ್‌ಗಳ ಸಮಾರೋಪಣೆಯೊಂದಿಗೆ

ಹಿಂದಿನ ವಿಭಾಗಗಳಲ್ಲಿ outlined ಮಾಡಿದಂತೆ, CSVಗಳನ್ನು Excel, PowerBI ಅಥವಾ ನೀವು ಇಷ್ಟಪಡುವುದೇನಾದರೂ ಮುಂದಿನ ವಿಶ್ಲೇಷಣೆಗೆ ಬಳಸಬಹುದು. ದೊಡ್ಡ ಡೇಟಾ ಸವಾಲುಗಳನ್ನು ಎದುರಿಸಲು ಬಹಳಷ್ಟು ಫೈಲ್‌ಗಳನ್ನು ಉತ್ಪಾದಿಸುವ ಉದ್ದೇಶವಾಗಿದೆ.

ನಿಮ್ಮ ಬಳಕೆದಾರನಿಗೆ ಆಧಾರಿತವಾಗಿ, ನೀವು ಬಹುಶಃ ಬಳಸುವ ಅಂಕಿಅಂಶಗಳನ್ನು ಮಾತ್ರ ಹೊಂದಲು ಬಯಸುತ್ತೀರಿ. ಈ ವಿಧಾನದಲ್ಲಿ, ನೀವು ಸಂಪೂರ್ಣ ಲಾಗ್‌ನಲ್ಲಿ ಎಲ್ಲಾ ವಿವರಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಅಗತ್ಯವಿಲ್ಲ. ಇದು ಡೇಟಾವನ್ನು ಸಮಾರೋಪಿಸುತ್ತದೆ ಮತ್ತು ಎಲ್ಲಾ ಶಬ್ದದ ವಿವರಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸುತ್ತದೆ, ಏಕೆಂದರೆ ಇದು ಈಗಾಗಲೇ ಡೇಟಾವನ್ನು ಸಮಾರೋಪಿಸುತ್ತದೆ.
ನೀವು ಶೋಧನೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಯ ವಿವರಗಳನ್ನು ಹುಡುಕಲು ಹೋಗಲು ಬಯಸಿದರೆ, ನೀವು ಸಂಪೂರ್ಣ ಲಾಗ್ ಅನ್ನು ಬಳಸಲು ಬಯಸಬಹುದು ಮತ್ತು ಅಂಕಿಅಂಶಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಬಹುದು, ಏಕೆಂದರೆ ಅವು ಸಾಕಷ್ಟು ವಿವರಗಳನ್ನು ಒದಗಿಸುತ್ತಿಲ್ಲ.


ಆದರೆ, ನೀವು ಯಾವ ಔಟ್‌ಪುಟ್ ಫೈಲ್‌ಗಳನ್ನು ಹೊಂದಲು ಬಯಸುತ್ತೀರಿ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸಲು ಒಂದು ಪ್ಯಾರಾಮೀಟರ್ ಹೊಂದಿದರೆ ಚೆನ್ನಾಗಿರ wouldn’t?
-OutputType ಪ್ಯಾರಾಮೀಟರ್ ಗೆ ನಮಸ್ಕಾರ ಹೇಳಿ!

Convert-DNSDebugLogFile -InputFile "DnsDebugLog_DC01.log" -OutputType Statistic

ಇದರಿಂದ, ನೀವು ಲಾಗ್ ಅನ್ನು ಮಾತ್ರ, ಅಂಕಿಅಂಶಗಳನ್ನು ಮಾತ್ರ ಅಥವಾ ಎರಡನ್ನೂ ಹೊಂದಲು ಬಯಸುತ್ತೀರಿ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸಬಹುದು. ಇದು ನಿಮಗೆ ಹೆಚ್ಚು ಲವಚಿಕತೆಯನ್ನು ನೀಡುತ್ತದೆ ಮತ್ತು ಬಹುಶಃ ನಿಮಗೆ ಬಹಳಷ್ಟು ಸಂಗ್ರಹಣಾ ಸ್ಥಳವನ್ನು ಉಳಿಸುತ್ತದೆ.


ಉತ್ಪಾದಿತ CSV ಫೈಲ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸುವಾಗ, CSVಗಳಲ್ಲಿ “ComputerName” ಎಂದು ಕರೆಯುವ ಖಾಲಿ ಕಾಲಮ್ ಇದೆ ಎಂದು ನೀವು ಗಮನಿಸುತ್ತೀರಿ.

ಇದು DNS ಡಿಬಗ್ ಲಾಗ್‌ನಲ್ಲಿ ಸರ್ವರ್‌ನ ಹೆಸರಿಲ್ಲದ ಕಾರಣವಾಗಿದೆ. 🤷‍♂️

ಈ ಕಾಲಮ್‌ಗೆ ಜೀವವನ್ನು ತರುವುದಕ್ಕಾಗಿ, ನೀವು ಆಜ್ಞೆಯಲ್ಲಿ -ComputerName ಪ್ಯಾರಾಮೀಟರ್ ಗೆ ಸರ್ವರ್‌ನ ಹೆಸರನ್ನು ಒದಗಿಸಬಹುದು.

# ಕೈಯಿಂದ ಕಂಪ್ಯೂಟರ್ ಹೆಸರನ್ನು ನಿರ್ದಿಷ್ಟಗೊಳಿಸಿ
Convert-DNSDebugLogFile -InputFile "DnsDebugLog_DC01.log" -ComputerName "DC01"

ನೀವು Configure the DebugLogFile ವಿಭಾಗದಲ್ಲಿ ಲಾಗ್‌ಫೈಲ್‌ಗಳ ಹೆಸರಿನಲ್ಲಿ ಸರ್ವರ್‌ನ ಹೆಸರನ್ನು ಹಾಕುವುದು ಬಗ್ಗೆ ನನ್ನ ಸಲಹೆಯನ್ನು ನೆನೆಸುತ್ತೀರಾ? ಅಭ್ಯಾಸದಿಂದ, ನೀವು ಫೈಲ್ ಹೆಸರನ್ನು ವಿಭಜಿಸುವ ಮೂಲಕ CSV ಫೈಲ್‌ನಲ್ಲಿ ಸರ್ವರ್‌ನ ಹೆಸರನ್ನು ತಕ್ಷಣವೇ ಸೇರಿಸಬಹುದು.

# ಫೈಲ್ ಹೆಸರಿನಿಂದ ಕಂಪ್ಯೂಟರ್ ಹೆಸರನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಹೊರತೆಗೆದುಕೊಳ್ಳಿ
$files = Get-ChildItem c:\logs\*.log

foreach($file in $files) {
    Convert-DNSDebugLogFile -InputFile $file.FullName -ComputerName $file.BaseName.split("_")[1]
}

ನೀವು ಬಹಳಷ್ಟು ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದರೆ ಮತ್ತು ಉತ್ತಮ ಗುರುತಿಸುವಿಕೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಗೆ CSV ಯಲ್ಲಿ ಸರ್ವರ್ ಹೆಸರನ್ನು ಹೊಂದಲು ಬಯಸಿದರೆ, ಇದು ವಿಶೇಷವಾಗಿ ಸಹಾಯಕವಾಗಿದೆ.

ನೀವು ತೆಗೆದುಕೊಳ್ಳಲು ಬಯಸುವ ಇನ್ನೊಂದು ವಿಷಯವೆಂದರೆ ಉತ್ಪಾದಿತ CSV ನಲ್ಲಿ ದಿನಾಂಕದ ಸ್ವರೂಪ. ಮೂಲ ಲಾಗ್ ಫೈಲ್‌ನಿಂದ ಬಳಸುವ ಸ್ವರೂಪವನ್ನು ಡೀಫಾಲ್ಟ್ ಆಗಿ ಬಳಸಲಾಗುತ್ತದೆ.
ಅದು ಅಂತಾರಾಷ್ಟ್ರೀಯ ಪರಿಸರದಲ್ಲಿ ಸ್ಥಳೀಯಗೊಳಿಸಲಾದ ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿರುವಾಗ ಸವಾಲುಗಳನ್ನು ಉಂಟುಮಾಡಬಹುದು. ಬಹುಶಃ, ದಿನಾಂಕದ ಸ್ವರೂಪವು ಸರ್ವರ್‌ಗಳಿಂದ ಸರ್ವರ್‌ಗಳಿಗೆ ಬದಲಾಗಬಹುದು. ಇದು Excel ಅಥವಾ PowerBIಂತಹ ಉಪಕರಣಗಳಲ್ಲಿ ದಿನಾಂಕವನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಬಯಸಿದಾಗ ಸವಾಲುಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ, ಏಕೆಂದರೆ ಅವು ದಿನಾಂಕದ ಸ್ವರೂಪವನ್ನು ಸರಿಯಾಗಿ ಗುರುತಿಸುವುದಿಲ್ಲ. ಈ ಸವಾಲನ್ನು ಎದುರಿಸಲು, ನೀವು ಆಜ್ಞೆಯಲ್ಲಿ ಇನ್ನೊಂದು ಪ್ಯಾರಾಮೀಟರ್ ಬಳಸಬಹುದು… -OutputCulture ಪ್ಯಾರಾಮೀಟರ್ ಗೆ ಸ್ವಾಗತ.

ನನ್ನ ವೈಯಕ್ತಿಕ ದಿನಾಂಕದ ಸ್ವರೂಪದ ಮೆಚ್ಚಿನವು ISO ಸ್ವರೂಪ, ಆದ್ದರಿಂದ ನಾನು ಸಾಮಾನ್ಯವಾಗಿ ಸ್ವೀಡಿಷ್ ಔಟ್‌ಪುಟ್ ಸಂಸ್ಕೃತಿಯನ್ನು ("sv-SE") ಹೊಂದಿಸುತ್ತೇನೆ, ಏಕೆಂದರೆ ಇದು ದಿನಾಂಕ ಮತ್ತು ಸಮಯಕ್ಕಾಗಿ ISO ಸ್ವರೂಪವನ್ನು ಬಳಸುತ್ತದೆ. ಇದರಿಂದ, ನಾನು ಉತ್ಪಾದಿತ CSV ನಲ್ಲಿ ದಿನಾಂಕದ ಸ್ವರೂಪವು ಸತತ, ಶ್ರೇಣೀಬದ್ಧಗೊಳ್ಳುವ ಮತ್ತು ಸುಲಭವಾಗಿ ಗುರುತಿಸಬಹುದಾಗಿದೆ, ಸ್ಥಳೀಯ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪರಿಗಣಿಸದೇ.

Convert-DNSDebugLogFile -InputFile "DnsDebugLog_DC01.log" -OutputCulture "sv-SE"

ಒಂದು ಪಾರ್ಶ್ವಗತ ಟಿಪ್ಪಣಿ, ನೀವು ಮೂಲ ಸರ್ವರ್‌ನಲ್ಲಿ ಬಳಸುವ ಸ್ವರೂಪವನ್ನು ತಿಳಿದಿದ್ದರೆ -InputCulture ಪ್ಯಾರಾಮೀಟರ್ ಕೂಡ ಇದೆ. ಈ ಪ್ಯಾರಾಮೀಟರ್ -OutputCulture ಪ್ಯಾರಾಮೀಟರ್‌ನಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದರೆ ಇದು ಮೂಲ ಲಾಗ್ ಫೈಲ್‌ನಿಂದ ದಿನಾಂಕವನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ಸಂಸ್ಕೃತಿಯನ್ನು ನಿರ್ದಿಷ್ಟಗೊಳಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ.


ಕೊನೆಗೆ, ಉತ್ಪಾದನಾ ಬಳಕೆಗಾಗಿ ಎರಡು ಪ್ರಾಯೋಗಿಕ ಸಲಹೆಗಳು:
ಮೂಲವಾಗಿ ಬರೆಯಲ್ಪಟ್ಟ ಲಾಗ್ ಫೈಲ್ ಅನ್ನು CSV ಗೆ ಪರಿವರ್ತಿಸಿದ ನಂತರ, ನೀವು ಅದನ್ನು ಅಡಗಿಸಲು ಬಯಸಬಹುದು. CSV ಎಲ್ಲಾ ಮಾಹಿತಿಯನ್ನು ಹೆಚ್ಚು ಬಳಸಬಹುದಾದ ಸ್ವರೂಪದಲ್ಲಿ ಒಳಗೊಂಡಿರುತ್ತದೆ. -RemoveSourceFile ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು, ನೀವು ಇದನ್ನು ಹೆಚ್ಚುವರಿ ಪ್ರಯತ್ನವಿಲ್ಲದೆ ಮಾಡಬಹುದು.
ಮತ್ತು ಲಾಗ್‌ಫೈಲ್‌ಗಳು ಸರಳ ಪಠ್ಯವಾಗಿದ್ದು, ಬಹಳ ದೊಡ್ಡದಾಗಿರಬಹುದು, ನೀವು ಪರಿವರ್ತನೆಯ ನಂತರ ಅವುಗಳನ್ನು ಜಿಪ್ ಮಾಡಲು ಬಯಸಬಹುದು. -CompressOutput ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು, ನೀವು ಇದನ್ನು ಕೂಡ ತಕ್ಷಣವೇ ಮಾಡಬಹುದು.

Convert-DNSDebugLogFile -InputFile "DnsDebugLog_DC01.log" -OutputCulture "sv-SE" -RemoveSourceFile -CompressOutput

ಮೇಲಿನ ಎಲ್ಲಾ ಸಂಗತಿಗಳನ್ನು ಸಂಯೋಜಿಸುವ ಮೂಲಕ, ನೀವು DNS ಡಿಬಗ್ ಲಾಗ್‌ಗಳಿಂದ ಮುಂದಿನ ವಿಶ್ಲೇಷಣೆಗೆ ಡೇಟಾವನ್ನು ಪಡೆಯಲು ಬಹಳ ಶಕ್ತಿಯುತ ಮತ್ತು ಲವಚಿಕತೆಯ ಸಾಧನವನ್ನು ಹೊಂದಬಹುದು, ಜೊತೆಗೆ storage space and file management. As a final example, I want to bring up a more complete example that you can use in a production environment:

# get the fully written (rolled over) log files from the log folder
$files = Get-ChildItem "C:\Administration\Logs\DNSServer\*.log" | Sort-Object lastwritetime, Name -Descending | Select-Object -Skip 1

# Passing the files into conversion with all the practical parameters for a production use
foreach($file in $files) {
    $file | Convert-DNSDebugLogFile -ComputerName $file.BaseName.split("_")[1] -Delimiter ';' -OutputType 'Both' -ContextFilter Packet -OutputCulture sv-SE -CompressOutput -RemoveSourceFile
}

This example, especially with the filtering in the file selection process, is intended to run directly on the DNS servers. But it is also fine to run it on a dedicated machine to spare resources on the DNS servers. If it is running on a dedicated machine, you do not need to use Select-Object -Skip 1 in the file selection process.


ಯಾವುದೇ ಪ್ರಕರಣದಲ್ಲಿ, ನೀವು ಫೈಲ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಗಮನ ಹರಿಸಬೇಕು, ಅವು ಕೊನೆಗೆ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲಾದ ಫೈಲ್‌ಗಳಾಗಿರಲಿ ಅಥವಾ ಮೂಲ ಲಾಗ್ ಫೈಲ್‌ಗಳಾಗಿರಲಿ. ತೋರಿಸಿದ ಉದಾಹರಣೆಯೊಂದಿಗೆ, ಲಾಭವೆಂದರೆ ನೀವು ಈಗಾಗಲೇ ಒತ್ತಿಹಿಡಿದ ZIP ಫೈಲ್‌ಗಳನ್ನು ಮಾತ್ರ ಸಾಗಿಸುತ್ತೀರಿ. ಇದು ನೆಟ್‌ವರ್ಕ್ ಬ್ಯಾಂಡ್‌ವಿಡ್ತ್ ಉಳಿಸಲು ಉತ್ತಮ ವಿಧಾನವಾಗಿರಬಹುದು, ವಿಶೇಷವಾಗಿ ನೀವು ಬಹಳಷ್ಟು ಲಾಗ್ ಡೇಟಾವಿರುವ ವ್ಯಾಪಕವಾಗಿ ವಿತರಿತ ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದ್ದರೆ.

ವರದಿಗಳನ್ನು ರಚಿಸಲು

ಕೋನ್ಫಿಗರೇಶನ್ ಮತ್ತು ಡೇಟಾ ಸಂಗ್ರಹಣೆಯ ನಂತರ, ನೀವು ಅದನ್ನು ಬಳಸಲು ಬಯಸಬಹುದು, ಅಮೂಲ್ಯವಾದ ಅರ್ಥಗಳು ಮತ್ತು ವರದಿಗಳನ್ನು ರಚಿಸಲು. ನಿಮ್ಮ ಬಳಕೆದಾರರ ಪ್ರಕರಣದ ಆಧಾರದ ಮೇಲೆ, ಇದನ್ನು ಮಾಡಲು ವಿವಿಧ ಸಾಧನಗಳು ಲಭ್ಯವಿವೆ. ಕೆಲವು ಆಯ್ಕೆಗಳನ್ನು ನೋಡೋಣ.

ನಾನು ಹೆಚ್ಚು ಸಾಧನಗಳು ಮತ್ತು ವಿಧಾನಗಳು ಲಭ್ಯವಿರುವುದನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಅರಿಯುತ್ತೇನೆ, ಆದ್ದರಿಂದ ಕೆಳಗಿನ ವಿಭಾಗಗಳನ್ನು ನಿಮ್ಮನ್ನು ಸಾಧ್ಯತೆಗಳ ಒಂದು ನೋಟವನ್ನು ಪಡೆಯಲು ಮೂಲ ಉದಾಹರಣೆಗಳಂತೆ ಮಾತ್ರ ಪರಿಗಣಿಸಿ.

PowerShell - ತ್ವರಿತ ಶಾಟ್

ಡೇಟಾ ಬಳಕೆ - ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳು ವಿಭಾಗದಲ್ಲಿ ಈಗಾಗಲೇ ವಿವರಿಸಿದಂತೆ, ನೀವು ಡೇಟಾವನ್ನು ಆಮದು ಮಾಡುವ ಮೂಲಕ PowerShell ನಲ್ಲಿ ಕೆಲವು ತ್ವರಿತ ವಿಶ್ಲೇಷಣೆಗಳನ್ನು ಮಾಡಬಹುದು. ಇದು ತ್ವರಿತ ಸಮಸ್ಯೆ ಪರಿಹಾರ ಅಧಿವೇಶನಗಳಲ್ಲಿ ಸಹಾಯಕವಾಗಿರಬಹುದು, ನೀವು ಕೇವಲ ಕೆಲವು ಮೂಲ ಮಾಹಿತಿಯನ್ನು ತ್ವರಿತವಾಗಿ ಹಿಡಿಯಲು ಬಯಸಿದಾಗ. ಖಂಡಿತವಾಗಿ, ಇದು ಸಂಕೀರ್ಣ ವಿಶ್ಲೇಷಣೆ ಅಥವಾ ದೀರ್ಘಕಾಲಿಕ ವರದಿಗಾಗಿ ಪ್ರಥಮ-ಶ್ರೇಣಿಯ ಪರಿಹಾರವಲ್ಲ, ಆದರೆ ಇದು ಸಾಧ್ಯವಾಗಿದೆ.

ನಾನು ಇಲ್ಲಿ ಹೆಚ್ಚು ವಿವರಗಳಲ್ಲಿ ಹೋಗುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ನಾವು ಈಗಾಗಲೇ ಡೇಟಾ ಬಳಕೆ - ಇವೆಂಟ್‌ಲಾಗ್‌ಗಳು ವಿಭಾಗದಲ್ಲಿ ಮೂಲ ಗುಂಪು ಮತ್ತು ಫಿಲ್ಟರ್ ಆಯ್ಕೆಯನ್ನು ಕವರ್ ಮಾಡಿದ್ದೇವೆ. ಮತ್ತೊಂದು ಉದಾಹರಣೆಯಾಗಿ, Group-Object ಅನ್ನು DebugLogFile ನ CSV ಫೈಲ್‌ಗಳ ಮೇಲೆ ಅನ್ವಯಿಸಬಹುದು:

# Import the data from the generated CSV file
$dataRecords = Get-ChildItem C:\Administration\Logs\DNSServer\*_PacketStatistic.csv -File -Recurse | Import-Csv -Delimiter ";" -Encoding utf8

# Summarize how many DNS queries were made
$dataRecords | Measure-Object Count -Sum

# What servers are in the data
$dataRecords | Group-Object ComputerName -NoElement

# What kind of DNS queries were collected
$dataRecords | Group-Object QuestionType -NoElement

# What DNS clients IPs are in contact with the server(s)
$dataRecords | Group-Object ClientIP -NoElement

# What DNS clients are talking to which server distinctly
$dataRecords | Group-Object { "$($_.ClientIP) --> $($_.ComputerName)" } | Format-Table Name -AutoSize

Especially the last example on ClientIP ಗೆ ಗುಂಪು ಮಾಡುವುದು IP ಮತ್ತು ಸಂಬಂಧಿತ ವ್ಯವಸ್ಥೆಯ ಹೆಸರಿಗಾಗಿ ಸಂಬಂಧವನ್ನು ನಿರ್ಮಿಸಲು ಬಹಳ ಸಹಾಯಕವಾಗಬಹುದು. ಇದು ಸರಿಯಾದ DNS ಮೂಲಸೌಕರ್ಯವನ್ನು ಅಗತ್ಯವಿದೆ, ಎಲ್ಲಾ ಸಾಧನಗಳನ್ನು ನೋಂದಾಯಿತವಾಗಿರಬೇಕು, ಖಂಡಿತವಾಗಿ. PowerShell ನೊಂದಿಗೆ ನೀವು ಇದನ್ನು ಹೇಗೆ ಮಾಡಬಹುದು:

# Get the list of unique client IPs from the data records
$clientIPList = $dataRecords | Group-Object ClientIP -NoElement | Select-Object -ExpandProperty Name

# Resolve the client IPs to hostnames and create a mapping table
$clientMapping = foreach ($clientIP in $clientIPList) {
    if ($clientIP -in ("127.0.0.1", "0.0.0.0", "::1", ".")) {
        [pscustomobject]@{
            ClientIP = $clientIP
            Name     = "DNS ಸರ್ವರ್‌ನಲ್ಲಿ ಸ್ಥಳೀಯತಾಣ"
        }
    } else {
        $result = Resolve-DnsName -Name $clientIP -Type PTR -QuickTimeout -ErrorAction SilentlyContinue 
        
        if (([array]$result).count -ge 1) {
            [pscustomobject]@{
                ClientIP = $clientIP
                Name     = (($result.NameHost | Sort-Object) -join "; ")
            }
        } else {
            [pscustomobject]@{
                ClientIP = $clientIP
                Name     = "<DNS ಮೂಲಕ ಪರಿಹರಿಸಲಾಗದ ಹೆಸರು>"
            }
        }
    }
}

# Output the client mapping table
$clientMapping | Format-Table -AutoSize

# Export the client mapping to a CSV file for further use
$clientMapping | Export-Csv -Path "ClientIP_Mapping.csv" -Delimiter ";" -Encoding UTF8 -NoTypeInformation

ಈ ಕ್ಲೈಂಟ್ ಮ್ಯಾಪಿಂಗ್ ಸಹಾಯಕ ಮತ್ತು ಉಪಯುಕ್ತವಾಗಿರಬಹುದು. ಫಲಿತಾಂಶಗಳು ಈ ರೀತಿಯಾಗಿರಬಹುದು:

Excel - ಶ್ರೇಣೀಬದ್ಧ ಮತ್ತು ಲವಚಿಕ ಆಯ್ಕೆ

Excel ಅನ್ನು ಬಳಸುವುದು ತ್ವರಿತ ಮತ್ತು ಲವಚಿಕ CSV ಆಧಾರಿತ ವಿಶ್ಲೇಷಣೆಗೆ ಬಹಳ ಸಾಮಾನ್ಯ ವಿಧಾನವಾಗಿದೆ. ಮತ್ತು ಅದರಲ್ಲಿ ಏನೂ ತಪ್ಪಿಲ್ಲ, ಏಕೆಂದರೆ Excel ಡೇಟಾವನ್ನು ಫಿಲ್ಟರ್ ಮಾಡಲು, ಗುಂಪು ಮಾಡಲು ಮತ್ತು ದೃಶ್ಯೀಕರಿಸಲು ಬಹಳಷ್ಟು ಆಯ್ಕೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ಅಮೂಲ್ಯ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಲು. ಇದು ಬಳಕೆದಾರ ಸ್ನೇಹಿ ಮತ್ತು ಬಹಳಷ್ಟು ಜನರು ಇದರಲ್ಲಿ ಸ್ವಲ್ಪ ಪರಿಚಿತರಾಗಿದ್ದಾರೆ. ಏಕೈಕ ದುರ್ಬಲತೆ ಎಂದರೆ, ಇದು ಬಹಳ ದೊಡ್ಡ ಡೇಟಾಸೆಟ್‌ಗಳೊಂದಿಗೆ ಉತ್ತಮವಾಗಿ ವಿಸ್ತಾರಗೊಳ್ಳುವುದಿಲ್ಲ.

“ನಾನು ನನ್ನ DNS ಸರ್ವರ್‌ಗಳನ್ನು ಯಾವ ರೀತಿಯ ಪ್ರಶ್ನೆಗಳಿಗೆ ಬಳಸುತ್ತಿದ್ದೇನೆ?” ಎಂಬುದರ ಕುರಿತು ತ್ವರಿತ ವಿಶ್ಲೇಷಣೆಗೆ, Excel ಸಂಪೂರ್ಣವಾಗಿ ಸರಿಯಾಗಿದೆ. ಉತ್ಪಾದಿತ PacketStatistic CSV ಫೈಲ್‌ಗಳನ್ನು ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ಇಡಲು ಮತ್ತು Excel ಗೆ ಡೇಟಾ ಟ್ಯಾಬ್ ಮೂಲಕ ಫೋಲ್ಡರ್ ಅನ್ನು ಆಮದು ಮಾಡಲು ಹೇಳಿ.


ಫೋಲ್ಡರ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುವ ಮೂಲಕ, Excel ತಕ್ಷಣವೇ ಅಲ್ಲಿ ಎಲ್ಲಾ CSV ಫೈಲ್‌ಗಳನ್ನು ಆಮದು ಮಾಡುತ್ತದೆ ಮತ್ತು ಅವುಗಳನ್ನು ಒಟ್ಟುಗೂಡಿಸುತ್ತದೆ. ಪ್ಯಾಕೆಟ್‌ಸ್ಟಾಟಿಸ್ಟಿಕ್ ಫೈಲ್‌ಗಳು ಅಷ್ಟು ದೊಡ್ಡದಾಗಿಲ್ಲ, ಆದ್ದರಿಂದ ಇದು ಮಧ್ಯಮ ಗಾತ್ರದ ಪರಿಸರದಲ್ಲಿ ಕೆಲವು ಸರ್ವರ್‌ಗಳೊಂದಿಗೆ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕು.
ಡೇಟಾ ಆಮದು ಮಾಡಿದ ನಂತರ, ನೀವು Excel ನ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಡೇಟಾವನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ದೃಶ್ಯೀಕರಿಸಲು ಇಚ್ಛಿಸುವಂತೆ ಬಳಸಬಹುದು. PowerQuery ಒಳಗೆ ಡೇಟಾ ಆಮದು ತಂತ್ರಜ್ಞಾನದಲ್ಲಿ ಇನ್ನಷ್ಟು ಹೂಡಿಕೆ ಅಥವಾ ನಂತರದ ಹೆಚ್ಚುವರಿ ಸೂತ್ರ ಕಾಲಮ್‌ಗಳನ್ನು ಬಳಸುವುದರ ಮೂಲಕ, ನೀವು CSV ಗಳಿಂದ Client IP ಗಳನ್ನು ಮೇಲಿನ ಉದಾಹರಣೆಯ ClientIP_Mapping.csv ಫೈಲ್‌ನೊಂದಿಗೆ ಸಂಬಂಧಿತವಾಗಿ ಒಂದೇ ಟೇಬಲ್‌ನಲ್ಲಿ ಕ್ಲೈಂಟ್‌ಗಳ ಹೆಸರನ್ನು ಪಡೆಯಬಹುದು.
“PivotTable” ವೈಶಿಷ್ಟ್ಯವನ್ನು ಪಿವಟ್ ಡಯಾಗ್ರಾಮ್‌ಗಳೊಂದಿಗೆ ಬಳಸುವುದರಿಂದ, ಡೇಟಾವನ್ನು ದೃಶ್ಯೀಕರಿಸುವುದು ಬಹಳ ಸುಲಭವಾಗಿದೆ ಮತ್ತು ಕತ್ತರಿಸಲು ಮತ್ತು ಕತ್ತರಿಸಲು ಬಹಳಷ್ಟು ಆಯ್ಕೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದು ಮೇಲಿನಂತೆ ಒಬ್ಬ ಸಮೀಕ್ಷೆ ಅಥವಾ ಕಾಲಾವಧಿ ಆಧಾರಿತ ಚಾರ್ಟ್‌ಗಳಾಗಿರಬಹುದು.


ವಿಭಿನ್ನ DNS ಕ್ಲೈಂಟ್‌ಗಳ ನಡುವೆ ಪ್ರಶ್ನೆ ಪ್ರಕಾರಗಳ ವಿತರಣೆಯನ್ನು ತೋರಿಸುವಂತಹ ಈ ರೀತಿಯ ಬಹು-ಆಯಾಮಿಕ ಡೇಟಾ ಟೇಬಲ್‌ಗಳನ್ನು ಮರೆಯಬೇಡಿ.


ಇದು ಕೇವಲ ಉದಾಹರಣೆಯಾಗಿ ಇರಬೇಕು… ಮತ್ತು ನಾನು ಈ ನಿಮ್ಮ ಅಗತ್ಯಗಳಿಗೆ ಅಥವಾ ನಿಮ್ಮ ಕಂಪನಿಯ ಅಥವಾ ಗ್ರಾಹಕರ ವಿನ್ಯಾಸಕ್ಕೆ ಹೊಂದಿಕೊಳ್ಳದಂತೆ ಸ್ಪಷ್ಟವಾಗಿ ವಿವರಿಸಲು ಬಯಸುತ್ತೇನೆ. ನಿಮ್ಮದೇ ಆದವನ್ನು ರಚಿಸಲು ಪ್ರೇರಣೆಯಾಗಿ ಇದನ್ನು ಪರಿಗಣಿಸಿ. ನಾನು ತೋರಿಸಿದ ಉದಾಹರಣೆಗಳನ್ನು ನಿರ್ಮಿಸಲು ಬಳಸಿದ ಸೂತ್ರಗಳು ಮತ್ತು ಪಿವಟ್ ತಂತ್ರಜ್ಞಾನವನ್ನು ನೋಡಲು ಬಯಸಿದರೆ, ಇಲ್ಲಿದೆ ಡೇಟಾ ಮತ್ತು ಉದಾಹರಣೆಗಳೊಂದಿಗೆ Excel ಫೈಲ್.

PowerBI - ಆಧುನಿಕ, ಶಕ್ತಿಶಾಲಿ ಆಯ್ಕೆ

ಬೃಹತ್ ಡೇಟಾ” ಮತ್ತು “ದೊಡ್ಡ ಕಾರ್ಪೊರೇಟ್ ಪರಿಸರಗಳಲ್ಲಿ”, PowerBI ಶಕ್ತಿಯುತ ಸ್ಪರ್ಧಿಯಾಗಿದೆ. Excel ತನ್ನ ಮಿತಿಗಳನ್ನು ತಲುಪಬಹುದು, ಏಕೆಂದರೆ ಇದು ಬಹಳ ದೊಡ್ಡ ಡೇಟಾಸೆಟ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿಲ್ಲ. ನೀವು ಕೆಲವು ಶತಕೋಶಗಳ ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದಾಗ, ಫೈಲ್‌ಗಳ ಸಂಖ್ಯೆಯು ಮತ್ತು ಫೈಲ್‌ಗಳಲ್ಲಿ ದಾಖಲೆಗಳು ಶೀಘ್ರದಲ್ಲೇ ಸಾವಿರ, ಲಕ್ಷ ಅಥವಾ ಬಿಲಿಯನ್ ಸಂಖ್ಯೆಗೆ ತಲುಪಬಹುದು.

ಇಲ್ಲಿ PowerBI ತನ್ನ ಹೇಳಿಕೆಯನ್ನು ನೀಡುತ್ತದೆ, ಏಕೆಂದರೆ ಇದು ದೊಡ್ಡ ಡೇಟಾಸೆಟ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ, ಶಕ್ತಿಶಾಲಿ ವಿಶ್ಲೇಷಣೆ ಮತ್ತು ದೃಶ್ಯೀಕರಣವನ್ನು ಒದಗಿಸುತ್ತದೆ, ನಿಯಮಿತವಾಗಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ನವೀಕರಿಸಲು ಮತ್ತು ಬಹಳಷ್ಟು ಬಳಕೆದಾರರಿಂದ ಬಳಸಲು ಅಗತ್ಯವಿಲ್ಲ.

PowerBI ಯಲ್ಲಿ ಆಮದು ತಂತ್ರಜ್ಞಾನ Excel ಡೇಟಾ ಆಮದುದರಲ್ಲಿ ಹೋಲಿಸುತ್ತಿದೆ, PowerQuery. ಇದನ್ನು ನೀಡಿದಾಗ, PowerBI ಮತ್ತು Excel ನಲ್ಲಿ ಹೆಚ್ಚು ಅಥವಾ ಕಡಿಮೆ ಒಂದೇ ಆಮದು ತಂತ್ರಜ್ಞಾನವಿದೆ. PowerBI ಆಮದು ನಂತರ ಡೇಟಾವನ್ನು ಹೇಗೆ ನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ದೃಶ್ಯೀಕರಣ ಮತ್ತು ಹಂಚಿಕೆಗೆ ಆಯ್ಕೆಯನ್ನು ಹೇಗೆ ಒದಗಿಸುತ್ತದೆ ಎಂಬುದರಲ್ಲಿ ವ್ಯತ್ಯಾಸವು ಪ್ರಾರಂಭವಾಗುತ್ತದೆ.
PowerBI ಮತ್ತು ಫ್ಯಾಬ್ರಿಕ್ ತಜ್ಞರು ನನ್ನನ್ನು PowerBI ಅನ್ನು Excel ಗೆ ಹೋಲಿಸುವುದಕ್ಕಾಗಿ ಶಿಕ್ಷಿಸಲು ಬಯಸಬಹುದು, ಆದರೆ ಮೂಲ ಅರ್ಥವನ್ನು ತಿಳಿಯಲು, ಅದನ್ನು ಹೀಗೆ ಇಡೋಣ. ನಾನು PowerBI ವಿಶೇಷ ವೈಶಿಷ್ಟ್ಯಗಳ ಬಗ್ಗೆ ಹೆಚ್ಚು ವಿವರಗಳಲ್ಲಿ ಹೋಗುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ಇದು ಈ ಲೇಖನದ ವ್ಯಾಪ್ತಿಯನ್ನು ಮೀರಿಸುತ್ತದೆ, ಆದರೆ ನಾನು ನಿಮಗೆ ಇದು ಹೇಗೆ ಕಾಣಬಹುದು ಎಂಬುದರ ಬಗ್ಗೆ ಕೆಲವು ಕಲ್ಪನೆಗಳನ್ನು ನೀಡಲು ಬಯಸುತ್ತೇನೆ.



ಹಿಂದಿನ ವಿಭಾಗದಲ್ಲಿ Excel ಉದಾಹರಣೆಗಳಿಗೆ ಉಲ್ಲೇಖಿಸಿದಂತೆ… ಎಲ್ಲವೂ ಕೇವಲ ಉದಾಹರಣೆ ಮತ್ತು ನಿಮ್ಮ ಅಗತ್ಯಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳದಂತೆ ಇರಬಹುದು. ನಾನು PowerBI ವರದಿಗಳ ವಿನ್ಯಾಸದಲ್ಲಿ ಹೆಚ್ಚು ಪ್ರಯತ್ನವನ್ನು ಹಾಕಿಲ್ಲ, ಏಕೆಂದರೆ ನಾನು ಮೂಲ ಅರ್ಥಕ್ಕಾಗಿ ಕೆಲವು ಉದಾಹರಣೆಗಳನ್ನು ನೀಡಲು ಬಯಸುತ್ತೇನೆ. ನಿಮ್ಮ ಪರಿಸರದ ಗಾತ್ರ ಮತ್ತು ಡೇಟಾದ ಪ್ರಮಾಣವನ್ನು ಆಧರಿಸಿ, ನಿಮ್ಮ ವರದಿ ಸಂಪೂರ್ಣವಾಗಿ ವಿಭಿನ್ನವಾಗಿರಬಹುದು.

ಮುಖ್ಯ ಅಂಶವೆಂದರೆ, PowerBI ನೊಂದಿಗೆ ನೀವು ನಿಮ್ಮದೇ ಆದ ವರದಿಗಳು ಮತ್ತು ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ಗಳನ್ನು ರಚಿಸಲು ಶಕ್ತಿ ಹೊಂದಿದ್ದೀರಿ, ಅವುಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ನವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ.ನಿಯಮಿತವಾಗಿ ಮತ್ತು ಅಡಿಯಲ್ಲಿ ಇರುವ ಡೇಟಾವನ್ನು ಹೇಗೆ ನಿರ್ವಹಿಸುವುದನ್ನು ತಿಳಿಯದ ಬಹಳಷ್ಟು ಬಳಕೆದಾರರಿಂದ ಸುಲಭವಾಗಿ ಪ್ರವೇಶಿಸಬಹುದಾಗಿದೆ.

ನೀವು ಉದಾಹರಣೆಗಳೊಂದಿಗೆ PowerBI ಫೈಲ್ ಅನ್ನು ನೋಡಲು ಬಯಸಿದರೆ, ಇಲ್ಲಿ PowerBI ಫೈಲ್ ಡೇಟಾ ಮತ್ತು ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ಇದೆ.

ಸಮಾರೋಪ

ಈ ಎಲ್ಲಾ ಮಾಹಿತಿಯೊಂದಿಗೆ, ನೀವು DNS ಸರ್ವರ್ ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಜಗತ್ತಿನಲ್ಲಿ ತಲುಪಲು ಉತ್ತಮವಾಗಿ ಸಜ್ಜಾಗಿದ್ದೀರಿ.


ನೀವು ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಮತ್ತು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು, ಮತ್ತು ಉತ್ಪಾದಿತ ಡೇಟಾವನ್ನು ಬಳಸಲು ಮತ್ತು ವಿಶ್ಲೇಷಿಸಲು ತಿಳಿವಳಿಕೆ ಹೊಂದಿದ್ದೀರಿ. ನೀವು PowerShell ನಲ್ಲಿ ತ್ವರಿತ ವಿಶ್ಲೇಷಣೆ ಮಾಡಲು ಅಥವಾ Excel ಅಥವಾ PowerBI ನಲ್ಲಿ ವಿವರವಾದ ವರದಿಗಳನ್ನು ರಚಿಸಲು ಆಯ್ಕೆ ಮಾಡಬಹುದು, ಆಯ್ಕೆ ನಿಮ್ಮದು. ನೀವು ಒಪ್ಪಿಕೊಳ್ಳುವಂತೆ, ದೊಡ್ಡ ಶಕ್ತಿಯೊಂದಿಗೆ ದೊಡ್ಡ ಜವಾಬ್ದಾರಿ ಬರುತ್ತದೆ, ಆದ್ದರಿಂದ ನೀವು ಸಂಗ್ರಹಿಸುತ್ತಿರುವ ಡೇಟಾ ಪ್ರಮಾಣ ಮತ್ತು ಅದನ್ನು ಹೇಗೆ ಬಳಸುತ್ತಿದ್ದೀರಿ ಎಂಬುದರ ಬಗ್ಗೆ ಜಾಗರೂಕವಾಗಿರಿ.

🚀 ಲಾಗಿಂಗ್ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಯಲ್ಲಿಯೇ ಸಂತೋಷವಾಗಿರಿ! 🚀



ಸಂಬಂಧಿತ ಲಿಂಕ್ಸ್

  • Microsoft Docs: DNS ಸರ್ವರ್‌ನಲ್ಲಿ ಡಿಬಗ್ ಲಾಗಿಂಗ್ - DNS ಸರ್ವರ್‌ನಲ್ಲಿ ಡಿಬಗ್ ಲಾಗಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವ ಮತ್ತು ಬಳಸುವ ಬಗ್ಗೆ ಅಧಿಕೃತ ಡಾಕ್ಯುಮೆಂಟೇಶನ್.
  • PowerShell Gallery: DNSServer.DebugLogParser - DNS ಸರ್ವರ್ ಡಿಬಗ್ ಲಾಗ್ ಫೈಲ್‌ಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಲು PowerShell ಮೋಡ್ಯೂಲ್.
  • GitHub Repository: DNSServer.DebugLogParser - DNSServer.DebugLogParser ಮೋಡ್ಯೂಲ್‌ಗಾಗಿ GitHub ರೆಪೊಸಿಟರಿ, ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಮತ್ತು ಉದಾಹರಣೆ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಒಳಗೊಂಡಿದೆ.
  • PowerQuery Documentation - Excel ಮತ್ತು PowerBI ಯೊಂದಿಗೆ ಬಳಸಬಹುದಾದ ಶಕ್ತಿಯುತ ಡೇಟಾ ಪರಿವರ್ತನೆ ಮತ್ತು ವಿಶ್ಲೇಷಣಾ ಸಾಧನಕ್ಕಾಗಿ ಅಧಿಕೃತ ಡಾಕ್ಯುಮೆಂಟೇಶನ್.
  • PowerBI Documentation - ಪರಸ್ಪರ ವರದಿಗಳು ಮತ್ತು ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ಗಳನ್ನು ರಚಿಸಲು ಬಳಸಬಹುದಾದ ಶಕ್ತಿಯುತ ವ್ಯವಹಾರ ವಿಶ್ಲೇಷಣಾ ಸಾಧನಕ್ಕಾಗಿ ಅಧಿಕೃತ ಡಾಕ್ಯುಮೆಂಟೇಶನ್.

ಇತರ ಲಿಂಕ್ಸ್

Memes from makeameme.org