Apache ANT-এ Logging অত্যন্ত গুরুত্বপূর্ণ একটি ফিচার, যেটি আপনাকে আপনার বিল্ড প্রক্রিয়া চলাকালীন বিভিন্ন ধরনের তথ্য এবং ত্রুটি (error) পর্যবেক্ষণ করতে সাহায্য করে। ANT ব্যবহার করে আপনি custom logging কনফিগার করতে পারেন, যাতে আপনি বিল্ড প্রসেসের আউটপুট কাস্টমাইজ করতে এবং বিশেষ ধরনের লগ তথ্য সংগ্রহ করতে পারেন।
Apache ANT-এ লগিং কনফিগারেশন করার জন্য loglevel
এবং <log>
ট্যাগ ব্যবহার করা হয়। এটি আপনাকে কমান্ড লাইন থেকে নির্দিষ্ট লগ লেভেল বা কাস্টম লোগিং ফাইল তৈরি করতে সাহায্য করবে।
Apache ANT বিভিন্ন ধরণের লগ লেভেল প্রদান করে, যার মাধ্যমে আপনি আউটপুট কতটা বিস্তারিত দেখতে চান তা নিয়ন্ত্রণ করতে পারবেন। মূল লগ লেভেলগুলো হলো:
debug
: সবচেয়ে বিস্তারিত লগ, যেখানে সমস্ত প্রক্রিয়া এবং পরিবর্তনগুলি প্রদর্শিত হয়।info
: সাধারণ লগ তথ্য, যা সাধারণত বিল্ড স্ট্যাটাস এবং অন্যান্য গুরুত্বপূর্ণ তথ্য দেখায়।warn
: সতর্কতামূলক বার্তা। এটি সাধারণত ত্রুটির পূর্বাভাসের জন্য ব্যবহৃত হয়।error
: কেবল ত্রুটির তথ্য, যেমন বিল্ড ব্যর্থ হলে ত্রুটি বার্তা।fatal
: গুরুতর ত্রুটি যা বিল্ডের সম্পূর্ণ ব্যর্থতা ঘটায়।quiet
: খুব কম আউটপুট, কেবল প্রয়োজনীয় বার্তা দেখায়।ANT-এ কাস্টম লগিং কনফিগারেশন সেটআপ করার জন্য দুটি প্রধান পদ্ধতি ব্যবহার করা হয়:
-D
অপশন ব্যবহার করে লগ লেভেল সেট করা।build.xml
ফাইলে কাস্টম লগ ফাইল নির্ধারণ করা।-D
অপশন ব্যবহার করাANT ব্যবহার করে বিল্ড চালানোর সময় আপনি কমান্ড লাইনে -D
অপশন ব্যবহার করে লগ লেভেল কনফিগার করতে পারেন। নিচে একটি উদাহরণ দেওয়া হলো:
ant -Dloglevel=debug
এই কমান্ডটি loglevel
প্রপার্টি debug
হিসেবে সেট করবে, যার মানে হলো খুব বিস্তারিত লগ আউটপুট পাওয়া যাবে।
এছাড়া আপনি quiet
, info
, error
ইত্যাদি লগ লেভেলও ব্যবহার করতে পারেন:
ant -Dloglevel=quiet
build.xml
ফাইলে কাস্টম লগ ফাইল কনফিগার করাআপনি ANT এর বিল্ড স্ক্রিপ্ট (build.xml
) এ <log>
ট্যাগ ব্যবহার করে কাস্টম লগ ফাইল তৈরি করতে পারেন। এটি আপনাকে বিল্ডের আউটপুট ফাইলের মধ্যে লগ তথ্য রাখতে সাহায্য করে।
build.xml
ফাইলে লগ কনফিগারেশন উদাহরণ:<project name="MyProject" default="compile" basedir=".">
<!-- Properties -->
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="log.file" value="build/logs/build.log"/>
<!-- Compile Java source files -->
<target name="compile">
<mkdir dir="${build.dir}"/>
<javac srcdir="${src.dir}" destdir="${build.dir}">
<classpath>
<pathelement path="lib/some-library.jar"/>
</classpath>
</javac>
</target>
<!-- Logging to custom file -->
<target name="log">
<log file="${log.file}" level="debug"/>
</target>
</project>
<log>
ট্যাগ:level="debug"
দিয়ে সেট করা হবে যাতে পুরো বিল্ড প্রসেসের বিস্তারিত লগ পাওয়া যায়।file
অ্যাট্রিবিউটে কাস্টম লগ ফাইলের পাথ দেয়া হয়েছে (build/logs/build.log
)।loglevel="debug"
:log
টার্গেটে ব্যবহার করা হয়েছে, যা ডিবাগ লগ লেভেল নির্ধারণ করবে। আপনি এখানে অন্যান্য লেভেল যেমন info
, warn
, error
ইত্যাদি ব্যবহার করতে পারেন।ANT দিয়ে লগ ফাইল তৈরি করার জন্য আপনি <log>
ট্যাগ ব্যবহার করে, আউটপুট ফাইলের পাথ এবং লগ লেভেল নির্ধারণ করতে পারেন।
<target name="log">
<log file="build.log" level="info" append="true"/>
</target>
file="build.log"
: লগ ফাইলের নাম এবং পাথ যেখানে লগ আউটপুট সংরক্ষিত হবে।level="info"
: লগ লেভেল info
নির্ধারণ করবে, অর্থাৎ, সাধারণ বিল্ড স্ট্যাটাস এবং তথ্য দেখাবে।append="true"
: যদি append="true"
থাকে, তবে পুরানো লগের শেষে নতুন লগ যোগ হবে। যদি এটি না থাকে, তবে নতুন লগ ফাইল পুরনো লগ ফাইলের উপর লেখা হবে।ANT-এ loggers ব্যবহার করে আপনি কাস্টম লোগিং প্লাগইনও তৈরি করতে পারেন। আপনি ANT এর logger
উপাদান ব্যবহার করে নিজের কাস্টম লগ ক্লাস তৈরি করতে পারেন। এটি একটি উন্নত বৈশিষ্ট্য যা বিশেষত তখন দরকারী যখন আপনি ANT এর লগিং ব্যবস্থা কাস্টমাইজ করতে চান।
build.xml
এ কাস্টম Logger ব্যবহার করার উদাহরণ:<target name="custom-log">
<logger class="com.mycompany.CustomLogger"/>
</target>
এই ক্ষেত্রে, com.mycompany.CustomLogger
হল একটি কাস্টম লগার ক্লাস যা আপনাকে ANT এর লগ আউটপুট কাস্টমাইজ করার সুযোগ দিবে।
ANT-এ লগ লেভেল এবং কাস্টম আউটপুট কনফিগার করে আপনি আপনার বিল্ড প্রক্রিয়া সহজেই ট্র্যাক করতে পারবেন এবং যেকোনো সমস্যা বা ত্রুটি শনাক্ত করতে পারবেন।
নিচে কিছু সাধারণ loglevel এবং তাদের ব্যবহার দেখানো হচ্ছে:
debug
, info
, warn
, error
, fatal
, quiet
—এই লগ লেভেলগুলো ব্যবহার করে আপনি কন্ট্রোল করতে পারেন কতটা বিস্তারিত আউটপুট পাবেন।build.xml
ফাইলে log
ট্যাগ ব্যবহার করে কাস্টম লগ ফাইল তৈরি করা যায়।logger
উপাদান ব্যবহার করতে পারেন, যা আরও উন্নত লগিং কনফিগারেশনের জন্য উপকারী।Custom logging configuration আপনাকে বিল্ড আউটপুট আরও নিয়ন্ত্রণযোগ্য এবং বিশ্লেষণযোগ্য করতে সহায়ক হবে।
common.read_more