కోడ్‌జిమ్/జావా కోర్సు/మాడ్యూల్ 3/లాగింగ్ స్థాయిలను సెట్ చేస్తోంది

లాగింగ్ స్థాయిలను సెట్ చేస్తోంది

అందుబాటులో ఉంది

4.1 లాగింగ్ స్థాయిల జాబితా

మీరు మీ ప్రోగ్రామ్‌ను వ్రాసారు, దానిని సర్వర్‌కు అప్‌లోడ్ చేసారు, ఆపై మీకు వెంటనే ప్రశ్నలు వస్తాయి:

  • debug()లో పని చేస్తున్నప్పుడు పద్ధతి పని చేయదని ఎలా నిర్ధారించుకోవాలి production?
  • లాగ్‌లలో చాలా సమాచారం ఉంది, మీరు దోష సందేశాలను మాత్రమే ఉంచాలనుకుంటున్నారా?
  • అప్లికేషన్‌లోని ఒక భాగానికి సంబంధించిన వివరణాత్మక లాగ్‌ను ఎలా చూడాలి?

వాస్తవానికి, లాగ్‌ల సృష్టికర్తలు దశాబ్దాల క్రితం ఇదే విషయాన్ని ఎదుర్కొన్నారు. సి లాంగ్వేజ్‌లో ఈ సమస్య ఎలా పరిష్కరించబడిందో నేను మీకు చెప్పను, కానీ జావా భాషలో చాలా అందంగా పరిష్కరించబడింది.

కు సమాచారాన్ని వ్రాయడానికి ముందు లాగ్ డేటాను ఫిల్టర్ చేస్తుంది . లాగింగ్ స్థాయిని సెట్ చేయడం ద్వారా మీరు లాగ్ వివరాలను చాలా త్వరగా తగ్గించవచ్చు / పెంచవచ్చు. ఈ స్థాయిలు క్రింది పట్టికలో వివరించబడ్డాయి:

స్థాయి గమనిక
1 అన్ని అన్ని సందేశాలను లాగ్ చేయండి
2 జాడ కనుగొను డీబగ్ చేస్తున్నప్పుడు చిన్న సందేశం
3 డీబగ్ డీబగ్గింగ్ కోసం ముఖ్యమైన సందేశాలు
4 సమాచారం సాధారణ సందేశాలు
5 హెచ్చరించు ప్రాణాంతకం, లోపం మరియు హెచ్చరిక మాత్రమే వ్రాయండి
6 లోపం లోపాలు మరియు ప్రాణాంతక దోషాలను మాత్రమే వ్రాయండి
7 ప్రాణాంతకం ప్రాణాంతకమైన లోపాలను మాత్రమే వ్రాయండి
8 ఆఫ్ లాగ్‌కు సందేశాలను వ్రాయవద్దు

సందేశాలను ఫిల్టర్ చేసేటప్పుడు ఈ స్థాయిలు ఉపయోగించబడతాయి. మీరు లాగింగ్ స్థాయిని సెట్ చేస్తే WARN, దాని కంటే తక్కువ ముఖ్యమైన అన్ని సందేశాలు WARNవిస్మరించబడతాయి: TRACE, DEBUG, INFO. మీరు ఫిల్టరింగ్ స్థాయిని సెట్ చేస్తే FATAL, అప్పుడు కూడా ERROR.

ఫిల్టరింగ్‌లో ఉపయోగించే మరో రెండు తీవ్రత స్థాయిలు ఉన్నాయి - ఇది OFF(అన్ని సందేశాలను విస్మరించండి) మరియు ALL- అన్ని సందేశాలను వ్రాయండి (ఏమీ విస్మరించవద్దు).

4.2 లాగ్ సెటప్ ఉదాహరణ

ఒక సాధారణ లాగ్ సెటప్ ఉదాహరణను చూద్దాం. దీన్ని చేయడానికి, మనకు log4j.properties ఫైల్ అవసరం, ఇది వనరుల ఫోల్డర్‌లో ఉంచబడుతుంది. దానికి కింది కంటెంట్‌ని జోడిద్దాం:

# Root logger option
log4j.rootLogger=WARN, stdout

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}

ఇక్కడ మొదటి పంక్తిలో మేము లాగింగ్ స్థాయిని సెట్ చేసాము - WARN. మరియు స్థితితో లాగర్‌కు వ్రాయబడిన సందేశాలు విస్మరించబడతాయని దీని DEBUGఅర్థం INFO.

  • మేము ఏ రకమైన అనుబంధాన్ని ఉపయోగించాలో పేర్కొనండి -ConsoleAppender
  • మేము లాగ్ ఎక్కడ వ్రాస్తామో పేర్కొనండి -System.out
  • మేము రికార్డింగ్ ఆకృతిని నియంత్రించే తరగతిని సెట్ చేసాము -PatternLayout
  • అన్ని సందేశాల కోసం రికార్డింగ్ ఆకృతిని సెట్ చేయండి - తేదీ మరియు సమయం

4.3 జనాదరణ పొందిన లాగింగ్ తప్పులు

మరియు మరొక ముఖ్యమైన విషయం - లాగింగ్‌లో జనాదరణ పొందిన లోపాలు. ఏదైనా చేయడానికి చాలా ఎంపికలు లేవు, కానీ అనేక సాధారణ తప్పులను గుర్తించవచ్చు:

  1. చాలా ఎక్కువ లాగింగ్ . మీరు ప్రతి అడుగును లాగిన్ చేయకూడదు, ఇది సిద్ధాంతపరంగా ముఖ్యమైనది. ఒక నియమం ఉంది: లాగ్‌లు పనితీరును 10% కంటే ఎక్కువ లోడ్ చేయలేవు . లేకపోతే పనితీరు సమస్యలు ఉంటాయి.
  2. మొత్తం డేటాను ఒకే ఫైల్‌లోకి లాగడం . దీని వలన కొంత సమయంలో చదవడం/వ్రాయడం చాలా కష్టంగా ఉంటుంది, నిర్దిష్ట సిస్టమ్‌లలో ఫైల్ పరిమాణ పరిమితులు ఉన్నాయని ప్రత్యేకంగా చెప్పనక్కర్లేదు.
  3. తప్పు లాగింగ్ స్థాయిలను ఉపయోగించడం . లాగింగ్ యొక్క ప్రతి స్థాయికి స్పష్టమైన సరిహద్దులు ఉన్నాయి మరియు వాటిని గౌరవించాలి. సరిహద్దు అస్పష్టంగా ఉంటే, ఏ స్థాయిలో ఉపయోగించాలో మీరు అంగీకరించవచ్చు.
వ్యాఖ్యలు
  • జనాదరణ పొందినది
  • కొత్తది
  • పాతది
వ్యాఖ్యానించడానికి మీరు తప్పనిసరిగా సైన్ ఇన్ చేసి ఉండాలి
ఈ పేజీకి ఇంకా ఎలాంటి వ్యాఖ్యలు లేవు