Visual Basic for Applications:
লগিং

কিভাবে:

VBA-তে, অন্য কিছু ভাষায় পাওয়া যায় এমন একটি নির্মিত লগিং ফ্রেমওয়ার্ক নেই। তবে, একটি সাধারণ লগিং যন্ত্রণা বাস্তবায়ন করা সরল। নিচে একটি সাধারণ ফাইল লগার তৈরি করার উদাহরণ দেওয়া হল।

১. একটি লগ ফাইলে লেখা: এই উদাহরণ ফাংশন, LogMessage, একটি টেক্সট ফাইলে সময়মুহূর্ত সহ বার্তা লেখে।

Sub LogMessage(message As String)
    Dim logFilePath As String
    Dim fileNum As Integer
    
    ' লগ ফাইলের পথ নির্দেশ করুন
    logFilePath = ThisWorkbook.Path & "\log.txt"
    
    ' পরবর্তী উপলব্ধ ফাইল নম্বর পান
    fileNum = FreeFile()
    
    ' ফাইলটি সংযোজনের জন্য খুলুন
    Open logFilePath For Append As #fileNum
    
    ' সময়মুহূর্ত এবং লগ বার্তা লিখুন
    Print #fileNum, Now & ": " & message
    
    ' ফাইলটি বন্ধ করুন
    Close #fileNum
End Sub

একটি বার্তা লগ করতে, কেবল LogMessage("আপনার মেসেজ এখানে") কল করুন। এটি log.txt এ এন্ট্রিগুলি তৈরি করে যেমন:

4/30/2023 3:45:32 PM: আপনার মেসেজ এখানে

২. একটি লগ ফাইল থেকে পড়া: লগ ফাইলের বিষয়বস্তু পড়ে দেখানোর জন্য:

Sub ReadLogFile()
    Dim logFilePath As String
    Dim fileContent As String
    Dim fileNum As Integer
    
    logFilePath = ThisWorkbook.Path & "\log.txt"
    fileNum = FreeFile()
    
    ' ফাইলটি পড়ার জন্য খুলুন
    Open logFilePath For Input As #fileNum
    
    ' পুরো ফাইল বিষয়বস্তু পড়ুন
    fileContent = Input(LOF(fileNum), fileNum)
    
    ' ফাইলটি বন্ধ করুন
    Close #fileNum
    
    ' ফাইল বিষয়বস্তু প্রদর্শন করুন
    MsgBox fileContent
End Sub

গভীর ডুব

VBA-এ লগিং, এর একটি দেশীয় লগিং ফ্রেমওয়ার্কের অভাবের কারণে, সাধারণত মৌলিক ফাইল অপারেশনগুলি ব্যবহার করে বা ডাটাবেসে লগিং করা বা Windows ইভেন্ট লগের সাথে মিথস্ক্রিয়া করা যেমন আরো উন্নত প্রয়োজনসমূহের জন্য বাহ্যিক COM অবজেক্টের শক্তি হার্নেস করে বাস্তবায়ন করা হয়। ঐতিহাসিকভাবে, VBA-তে লগিং তার সরল ত্রুটি হ্যান্ডলিং এবং ডিবাগিং সরঞ্জামের দ্বারা উপস্থাপিত সীমাবদ্ধতাগুলি পরিবর্তে করার একটি উপায় ছিল। যদিও কার্যকর, সরাসরি ফাইল পরিচালনার জন্য লগিং সাধারণ এবং বড় ভলিউমের ডাটা অথবা উচ্চ সমান্তরালিকতার অধীনে অকার্যকর হতে পারে। অধিক উন্নত লগিং ক্ষমতা জন্য, প্রোগ্রামাররা প্রায়ই বাহ্যিক লাইব্রেরীগুলিতে মোড়ান বা লগিংয়ের জন্য বিশেষভাবে ডিজাইন করা সিস্টেমগুলির সাথে সংযোগ করে, যেমন ELK স্ট্যাক (Elasticsearch, Logstash, Kibana) বা Splunk, ওয়েব সেবা কল বা মধ্যবর্তী ডাটাবেসের মাধ্যমে। যদিও VBA নতুন প্রোগ্রামিং ভাষাগুলিতে পাওয়া আধুনিক সুবিধাগুলি প্রস্তাব করে না, এর ক্ষমতা এবং সীমাবদ্ধতাগুলি বুঝতে প্রোগ্রামারদের অ্যাপ্লিকেশন মনিটরিং এবং নির্ণয়ের একটি শক্তিশালী সরঞ্জাম হিসেবে লগিংয়ের কার্যকর ব্যবহার করতে অনুমতি দেয়।