2009-10-27 13 views
6

कुछ यहाँ यहाँ मेरे लिए सही लगता है नहीं, और इसलिए मैं समुदाय के इनपुट चाहते हैं - शायद मैं गलत तरीके से इस आ रहा ....लॉगिंग * व्यवसाय * घटनाक्रम - लॉगिंग ढांचे का उपयोग करें?

प्रश्न: क्या पारंपरिक बुनियादी सुविधाओं के प्रवेश का उपयोग करने के लिए उपयुक्त है व्यावसायिक घटनाओं लॉग करने के लिए ढांचे (जैसे log4net)?

जब मैं व्यापार की घटनाओं का कहना है, मेरा मतलब है मैं चाहता हूँ इस तरह एक वैश्विक लॉग:

निश्चित रूप से
FATAL 
ERROR 
WARN 
INFO 
DEBUG 

एक:

xx:xx Customer A purchased widget B. 
xx:xx Widget B was dispatched from warehouse. 
xx:xx Customer B payment declined. 

अधिकांश पारंपरिक बुनियादी सुविधाओं के प्रवेश चौखटे इस तरह घटना का स्तर कुछ है ये संदेश उसमें अच्छी तरह फिट नहीं होते हैं। सर्वश्रेष्ठ विवरण जानकारी होगी, लेकिन निश्चित रूप से ये महत्वपूर्ण घटनाएं हैं, और आईएनएफओ बहुत कम महत्व का है।

मैं करूंगा अभी भी रूप में इस तरह की एक 'लॉग इन करें'

मुझे लगता है मैं दो विकल्प हैं (उदाहरण के लिए मैं अपने व्यवसाय से निकालने के लिए है नहीं करना चाहती हर बार मैं इसे देखना चाहते हैं वस्तुओं):

1) log4net जैसे ढांचे का उपयोग करें और इसके लिए केवल एक विशेष लॉगर परिभाषित करें (और इस तथ्य के साथ रहें कि यह सही नहीं लगता है)।

2) ऐसा करने के लिए एक सेवा प्रदान करें जो पारंपरिक लॉगिंग सेवाओं पर निर्भर नहीं है।

मैं 2 की तरफ झुका रहा हूं। इसी तरह की स्थितियों में किसी और ने क्या किया है?

धन्यवाद!

उत्तर

4

जो आप चाहते हैं वह एक ऑडिटिंग सेवा की तरह लगता है, लॉगिंग सेवा नहीं। यदि मैं सही हूं, तो आपके लक्ष्यों को ऐतिहासिक और यहां तक ​​कि रिपोर्टिंग उद्देश्यों के लिए इन व्यावसायिक घटनाओं का ट्रैक रखना है।आप बेहतर वाक्यांश की कमी के लिए ऑडिट में विवरण का उपयोग कर सकते हैं, सिस्टम में होने वाली घटनाओं के लिए दोष दें।

शायद मैं इस उद्देश्य के लिए log4j जैसे लॉगिंग सिस्टम का उपयोग नहीं करता। हमारी प्रणाली में, लेखा परीक्षा एक पूर्ण श्रेणी के नागरिक के रूप में एक पूर्ण सेवा के रूप में है।

- HTH, डस्टी

+0

आपने ऑडिटिंग सेवाओं का उल्लेख किया है, क्या आप _log4j_ के बराबर इस ऑडिटिंग स्पेस में ** ** पुस्तकालय/सेवाएं ** जानते हैं? या यह ऐसा कुछ है जो आमतौर पर स्वयं ही विकसित होता है? – rmoestl

1

ये ध्वनि ऐसी चीजों की तरह है जो आपके ग्राहक संभावित रूप से आपके आवेदन के भीतर से पूछना या रिपोर्ट करना चाहते हैं - स्पष्ट विकल्प डेटाबेस होगा।

कण में, इस मामले में मुझे लगता है कि पारंपरिक लॉगिंग फ्रेमवर्क उपयुक्त नहीं होंगे क्योंकि जब डेटा की बात आती है तो आप बाद में अपने एप्लिकेशन लॉगिंग फ्रेमवर्क में प्रवेश करना चाहते हैं, जिससे आप उन चीजों को करने की अनुमति देते हैं जो वास्तव में समझ में नहीं आते हैं, उदाहरण के लिए आप ऐप.कॉन्फिग फ़ाइल के आधार पर लॉगिंग को कहां भेज सकते हैं (जो आप किसी अन्य स्थान से इसे पढ़ने और पढ़ने के लिए असहनीय हैं) को बदलने में सक्षम हो सकते हैं।

जिसके अनुसार, अगर एक प्रवेश ढांचे आप वास्तव में क्या आप पहले से ही करना चाहते हैं तो बस अपने कार्यान्वयन के रूप में प्रवेश ढांचे का उपयोग कर और अपने आप प्रयास की बचत में कोई शर्म की बात है नहीं है की अनुमति देता है:

class TransactionLogger 
{ 
    public void Log (Message message) 
    { 
     MyLoggingFramework.Log(message.string, etc...); 
    } 
} 
1

लकड़हारा छोड़ दो कार्यक्रम के साथ काम करने के लिए, व्यापार नहीं। यह डेवलपर्स की मदद करने के लिए सिर्फ एक उपकरण है।

व्यवसाय की घटनाओं को लॉग करने के लिए अपनी खुद की प्रणाली लिखें। यदि यह रिकॉर्ड करने के लिए व्यवसाय की आवश्यकता है, तो आप चाहते हैं कि आपके पास कुछ नियंत्रण हो और आपको यह पता लगाने के लिए उपरोक्त लॉगर का उपयोग करने की आवश्यकता होगी कि यह कैसे काम करता है।

मूल रूप से, # 2 आपके प्रश्न में।

1
मेरे लिए

एक व्यापार घटना के विचार है कि यह वास्तव व्यापार क्रिया बस एनालिटिक्स के लिए उपलब्ध करने के लिए आरंभ होने से कुछ भविष्य के व्यापार प्रसंस्करण में एक भूमिका निभाता है, कुछ भी है।

इसलिए, पूरी तरह से अलग QOS आवश्यकताओं। अपने स्वयं के एपीआई की जरूरत है।

कॉन्सेविएबल शुरुआत में नक्शे लॉगिंग करने के लिए नीचे, लेकिन भविष्य में विश्वसनीय संदेश या डीबी पर जा सकता है।

0

मेरे अनुभव में व्यावसायिक घटनाओं में दृश्यों के पीछे बड़ी या बड़ी संख्या में तकनीकी संचालन शामिल हैं, केवल कुछ व्यावसायिक घटनाएं व्यवसाय के लिए महत्वपूर्ण हैं।

यह जेनेरिक लॉगिंग पद्धति का उपयोग करने की कोशिश करते समय समस्याएं पैदा करता है, इसलिए आम तौर पर, जिन सिस्टमों पर मैंने काम किया है, दोनों का उपयोग किया जाता है।
तकनीकी पहलुओं के लिए लॉगिंग, और व्यावसायिक घटनाओं के लिए व्यावसायिक घटना लॉगिंग।

बिजनेस इवेंट लॉगिंग, तकनीकी लॉगिंग के समान तकनीक का उपयोग नहीं करता है, और इसके बजाय एक कस्टम डिज़ाइन किए गए इतिहास/ऑडिट तालिका में लॉग इन करता है (कभी-कभी ये आवश्यक विवरण के आधार पर विभाजित होते हैं), जिसे विशेष रूप से डिज़ाइन किया गया है प्रत्येक आवेदन। (यह लेखा परीक्षकों और उपयोगकर्ताओं को अच्छा और खुश रखता है।)

यह स्पष्ट रूप से प्रत्येक विनिर्देश के दायरे को विस्तारित करते हुए, जानकारी की आसान रिपोर्टिंग और प्रबंधन की अनुमति देता है।

0

आप इसका उपयोग कर सकते हैं लेकिन आपको व्यवसाय गतिविधि निगरानी और घटना प्रसंस्करण सॉफ्टवेयर की आवश्यकता है। मेरे सिर के ऊपर से, आईबीएम वेबस्पियर बिजनेस मॉनिटर इस क्षमता को प्रदान करता है। यह कॉमन बेस इवेंट (वेब ​​सेवा वितरित प्रबंधन वेब इवेंट प्रारूप मानक का एक आईबीएम कार्यान्वयन) को संसाधित करता है और फिर वह डेटा लेता है और व्यवसाय गतिविधि डैशबोर्ड बनाता है।

0

DiALog की जाँच करें: A Distributed Model for Capturing Provenance and Auditing Information, के अलावा वितरित पहलू से, आप विषय-विधेय-वस्तु सिद्धांत व्यापार की घटनाओं को दर्ज करने के लिए उपयोग कर सकते। और बाद में कुछ मार्गों का पुनर्निर्माण करें।

0

यहां एक संबंधित पोस्ट - मेरा है। Audit logging and exception management framework.

+0

आपके द्वारा पोस्ट किए गए लिंक का जवाब हो सकता है। हालांकि, आपको यहां प्रासंगिक भागों को पोस्ट करना चाहिए। – Linger

संबंधित मुद्दे