दस्तऐवज अयशस्वी समस्यानिवारण करण्यासाठी लॉग आवश्यक आहेत, परंतु संपूर्ण मजकूर लॉग करण्याची आवश्यकता नाही.

भाषांतर अयशस्वी शोधण्यासाठी लॉग आवश्यक आहेत, परंतु संपूर्ण करार, आयडी क्रमांक किंवा टोकन डाउनलोड करण्याची आवश्यकता नाही. परवानगी नसलेली दुसरी दस्तऐवज लायब्ररी बनण्यापेक्षा लॉगने "कोणते कार्य, कोणत्या टप्प्यावर आणि ते का अयशस्वी झाले" याचे उत्तर दिले पाहिजे.

दस्तऐवज भाषांतर अयशस्वी समस्यानिवारण करण्यासाठी लॉग आवश्यक आहेत, परंतु लॉगमध्ये कराराचा संपूर्ण मजकूर, आयडी क्रमांक किंवा डाउनलोड टोकन असणे आवश्यक नाही. हा लेख लॉगमध्ये ग्राहक दस्तऐवज कॉपी न करता "कोणते कार्य कोणत्या टप्प्यावर आणि का अयशस्वी झाले" लॉग उत्तर कसे बनवायचे ते स्पष्ट करतो.

योग्य वाचक हे डेव्हलपर आणि ऑपरेशन आणि देखभाल कर्मचारी आहेत जे दस्तऐवज भाषांतर सेवा, डॉकिंग भाषांतर इंटरफेस किंवा पार्श्वभूमी लॉग राखण्यासाठी जबाबदार आहेत. वाचल्यानंतर, तुम्ही श्वेतसूची फील्डचा संच डिझाइन करू शकता, लॉग मूळ मजकूर बाहेर आणत नाही याची पडताळणी करू शकता आणि समस्यानिवारणासाठी धारणा कालावधी आणि प्रवेश संधी सेट करू शकता.

उदाहरणे प्रक्रिया पद्धती प्रदर्शित करण्यासाठी सिंथेटिक नमुने वापरतात आणि कोड एका वेगळ्या वातावरणात तपासला गेला आहे, परंतु हे सर्व वास्तविक फाइल्स किंवा उत्पादन कार्यक्षमतेची हमी दर्शवत नाही. महत्त्वाच्या कागदपत्रांवर प्रक्रिया करण्यापूर्वी, कृपया मूळ कागदपत्रे ठेवा आणि खाली दिलेल्या सीमा आणि स्वीकृती आयटमनुसार त्यांचे पुनरावलोकन करा.

समस्यानिवारण लॉगमध्ये काय रेकॉर्ड केले पाहिजे? एका वाक्याचा निष्कर्ष

लॉग फक्त अनुमत फील्ड जसे की टास्क आयडी, स्टेज, एरर श्रेणी आणि वेळेचा वापर रेकॉर्ड करतो, परंतु दस्तऐवज सामग्री आणि क्रेडेन्शियल रेकॉर्ड करत नाही.

तुमची परिस्थितीशिफारस केलेल्या पद्धतीकारण
कोणते कार्य अयशस्वी झाले हे जाणून घेणे आवश्यक आहेयादृच्छिक अंतर्गत कार्य आयडी लॉग करणेवापरकर्ता फाइल नावे किंवा पथ उघड न करता समस्या शोधण्याची क्षमता
कार्ड कोणत्या टप्प्यात आहे हे निर्धारित करणे आवश्यक आहेस्टेजचे नाव आणि वेळ नोंदवाप्रत्येक स्त्रोत मजकूर आणि अनुवादाची आवश्यकता नाही
अपस्ट्रीमने विनंती फेटाळलीसामान्यीकृत त्रुटी श्रेणी लॉग कराप्रमाणीकरण प्रथम श्रेणी पूर्ण विनंती सामग्री लॉगमध्ये प्रविष्ट केली जाऊ नये
समस्यानिवारणासाठी मूळवर परत जाणे आवश्यक आहेनियंत्रित प्रणालीमध्ये संदर्भ वापरणेकायमस्वरूपी सार्वजनिकरित्या डाउनलोड केले जाऊ शकणारे दुवे लीक होण्याचा धोका असतो

रेकॉर्ड करण्याची परवानगी असलेल्या फील्डसह प्रारंभ करा

ब्लॅकलिस्टमध्ये नवीन संवेदनशील फील्ड सहजपणे चुकू शकतात. फक्त डिझाइन केलेले फील्ड आउटपुट करणे हा अधिक विवेकपूर्ण दृष्टीकोन आहे, उदाहरणार्थ:

  • अंतर्गत कार्य आयडी
  • प्रक्रिया स्टेज
  • त्रुटी श्रेणी
  • वेळ घेणारे

खालील संश्लेषण उदाहरण व्हाइटलिस्ट प्रोजेक्शन वापरते जेणेकरून इनपुटमधील संपूर्ण मजकूर आणि टोकन लॉगमध्ये प्रविष्ट केले जाणार नाहीत.

पडताळणी लॉगने मूळ मजकूर बाहेर आणला नाही.

import io
import json
import logging

ALLOWED = ("job_id", "stage", "error_code", "elapsed_ms")
def log_record(data):
    return {key: data[key] for key in ALLOWED if key in data}

stream = io.StringIO()
logger = logging.getLogger("synthetic-document-job")
logger.handlers.clear()
logger.propagate = False
logger.setLevel(logging.INFO)
handler = logging.StreamHandler(stream)
logger.addHandler(handler)
event = {"job_id": "demo-12", "stage": "parse", "error_code": "BAD_CONTAINER",
         "elapsed_ms": 42, "document_text": "synthetic confidential clause",
         "access_token": "synthetic-secret"}
logger.info(json.dumps(log_record(event), sort_keys=True))
logged = json.loads(stream.getvalue())
assert logged["error_code"] == "BAD_CONTAINER"
assert "document_text" not in logged
assert "synthetic-secret" not in stream.getvalue()
assert set(logged) <= set(ALLOWED)
logger.removeHandler(handler)

उदाहरण केवळ स्व-नावाच्या डेमो लॉगरमध्ये बदल करते. बिझनेस लायब्ररीमधील ऍप्लिकेशन ग्लोबल हँडलर साफ करण्याची शिफारस केलेली नाही. फील्ड मूल्ये अद्याप लांबी आणि प्रकारासाठी सत्यापित करणे आवश्यक आहे. जर तुम्ही वापरकर्त्याचा संपूर्ण मजकूर error_code मध्ये भरला, तर केवळ व्हाइटलिस्ट नाव तुम्हाला वाचवणार नाही.

संवेदनशील सामग्रीच्या जागी असोसिएशन आयडी

खालील तक्त्यामध्ये समस्यानिवारण दरम्यान सामान्य आवश्यकता तसेच शिफारस केलेल्या आणि शिफारस नसलेल्या नोंदी सूचीबद्ध केल्या आहेत.

तपासण्यात येणाऱ्या अडचणीशिफारस केलेले रेकॉर्डरेकॉर्ड करण्याची शिफारस केलेली नाही
कोणते कार्य अयशस्वी झालेयादृच्छिक अंतर्गत कार्य आयडीपूर्ण वापरकर्ता फाइल नाव आणि मार्ग
कोणत्या टप्प्याला वेळ लागतो?टप्पे आणि वेळ घेणारेप्रत्येक स्त्रोत मजकूर आणि अनुवाद
अपस्ट्रीमने नकार का दिला?सामान्यीकृत त्रुटी श्रेणीप्रमाणीकरण शीर्षलेखासह विनंती पूर्ण करा
मूळ कसे शोधायचेनियंत्रित प्रणालींमधील संदर्भकायमस्वरूपी सार्वजनिक डाउनलोड लिंक

ॲक्सेस स्कोपाइतकाच रिटेन्शन कालावधीही महत्त्वाचा आहे

जरी लॉगमध्ये मजकूर नसला तरीही, कार्य वेळ, भाषा आणि फाइल आकार यांचे संयोजन व्यवसाय माहिती प्रकट करू शकते. लॉगमध्ये प्रवेश नियंत्रणे, धारणा कालावधी आणि हटविण्याच्या प्रक्रियेसह असणे आवश्यक आहे.

समस्यानिवारण करताना, लॉग पातळी तात्पुरती वाढवा आणि दीर्घकाळ उत्पादन वातावरणात डीबग मोड सोडू नये म्हणून केव्हा पुनर्संचयित करायचे ते स्पष्ट करा.

भाषांतर एकत्रीकरणामध्ये स्पष्ट आणि प्रतिबंधित लॉग देखील असू शकतात

OmniDoc (उत्पादन पोर्टल) शी कनेक्ट करताना, तुम्हाला स्थानिक कार्ये आणि रिमोट टास्कमध्ये संबंध रेकॉर्ड करण्याची आवश्यकता आहे. समस्यानिवारणाच्या सोयीसाठी वापरकर्त्यांनी अपलोड केलेल्या फायली लॉगमध्ये कॉपी केल्या जाऊ नयेत.

एक चांगला समस्या अहवाल अयशस्वी स्टेज आणि पुनरावृत्ती परिस्थितीचे वर्णन करतो, ग्राहक दस्तऐवज केवळ अधिकृत प्रक्रिया मार्गांमध्ये प्रवाहित ठेवतो.

संदर्भ: Python logging.

📊 मुख्य तुलना

मार्गफायदाधोका
काळी यादीलेखन पद्धत सरळ आणि वापरण्यास सोपी आहे.नवीन संवेदनशील फील्ड गमावणे सोपे आहे
श्वेतसूचीकेवळ स्पष्ट सीमांसह डिझाइन केलेले फील्ड आउटपुट कराफील्डचे आगाऊ नियोजन करणे आवश्यक आहे आणि फील्ड मूल्यांची लांबी आणि प्रकार सत्यापित करणे आवश्यक आहे

🎯 तुमच्यासाठी कोणती पद्धत योग्य आहे?

तुम्हाला भाषांतर कार्य शोधण्याची आवश्यकता असल्यास

यादृच्छिक अंतर्गत कार्य आयडी आणि अपयशाचे टप्पे लॉग करणे, संपूर्ण वापरकर्ता फाइलनावे किंवा पथ लॉग न करणे.

जर तुम्हाला अपस्ट्रीम इंटरफेसद्वारे नोंदवलेल्या त्रुटी हाताळायच्या असतील

सामान्यीकृत त्रुटी वर्ग लॉग करणे, प्रमाणीकरण शीर्षलेखांसह संपूर्ण विनंत्या लॉग न करणे.

तुम्ही ऑनलाइन समस्यांचे निवारण करत असल्यास

तात्पुरते लॉग स्तर वाढवा आणि समस्यानिवारणानंतर लगेच पुनर्संचयित करा.

तुम्हाला लॉग फील्ड डिझाइन करायचे असल्यास

श्वेतसूचीला प्राधान्य द्या आणि फील्ड मूल्यांची लांबी आणि प्रकार सत्यापित करा.

❓ वारंवार विचारले जाणारे प्रश्न (FAQ)

१. वापरकर्त्याचे संपूर्ण फाइल नाव लॉगमध्ये रेकॉर्ड केले जाऊ शकते का?

शिफारस केलेली नाही. पूर्ण फाइल नाव आणि पथ रेकॉर्ड करण्याची शिफारस केलेली नाही आणि त्याऐवजी यादृच्छिक अंतर्गत कार्य आयडी सहसंबंध वापरला जाऊ शकतो.

२. संवेदनशील फील्ड फिल्टर करण्यासाठी ब्लॅकलिस्ट वापरण्याची शिफारस का केली जात नाही?

ब्लॅकलिस्टमध्ये नव्याने उदयास आलेली संवेदनशील फील्ड सहजगत्या चुकते, तर श्वेतसूची केवळ डिझाइन केलेली फील्ड आउटपुट करते, जी अधिक सुरक्षित आहे.

3. फक्त टास्क टाइम आणि फाईलचा आकार व्यवस्थापित करणे आवश्यक आहे?

गरज या माहितीचे संयोजन व्यवसाय माहिती देखील प्रकट करू शकते आणि लॉगमध्ये प्रवेश नियंत्रणे, धारणा कालावधी आणि हटविण्याच्या प्रक्रियेसह असणे आवश्यक आहे.

४. समस्यानिवारण करताना डीबगिंग लॉग दीर्घकाळ चालू करता येतात का?

शिफारस केलेली नाही. तात्पुरते लॉग स्तर वाढवल्यानंतर, उत्पादन वातावरणात डीबग मोड दीर्घकाळ सोडू नये म्हणून ते केव्हा पुनर्संचयित करायचे हे जाणून घेणे आवश्यक आहे.

5. बिझनेस लायब्ररीमध्ये ग्लोबल हँडलर साफ करता येईल का?

शिफारस केलेली नाही. उदाहरण केवळ स्व-नावाच्या डेमो लॉगरमध्ये बदल करते आणि अनुप्रयोग ग्लोबल हँडलर व्यवसाय लायब्ररीमध्ये साफ केला जाऊ नये.

📝 सारांश

भाषांतर अयशस्वी समस्यानिवारण करताना, लॉगने दस्तऐवज सामग्री जतन करण्याऐवजी कार्ये, टप्पे आणि कारणांची उत्तरे दिली पाहिजेत. समस्यानिवारण कार्यक्षमता आणि दस्तऐवज सुरक्षितता संतुलित करण्यासाठी श्वेतसूची फील्ड, नियंत्रित संदर्भ आणि स्पष्ट धारणा कालावधी वापरा.

हे आता वापरून पहा: मूळ लेआउट कायम ठेवून भाषांतर सुरू करण्यासाठी दस्तऐवज अपलोड करा

अद्यतनित 2026-11-13