আমি কীভাবে আইআইএস লগ ফাইলগুলি নিয়মিত পরিষ্কার করতে পারি?


20

আমি সবেমাত্র আবিষ্কার করেছি যে আইআইএস অনির্দিষ্টকালের জন্য লগগুলি তৈরি করে এবং এমন কোনও আইআইএস সেটিংস নেই যা পুরানো লগ ফাইলগুলি স্বয়ংক্রিয়ভাবে পরিষ্কার করে দেবে। আমার আইআইএস লগগুলি নিয়ন্ত্রণের মধ্যে রাখার সর্বোত্তম উপায় কী যাতে তারা পুরো হার্ড ড্রাইভটি না ভরে?


আপনি কি পুরানোগুলি চারপাশে কোনও জিপ সংরক্ষণাগারে রাখতে চান, বা তাদের মুছতে চান?
জেফ আতউড

আপনি লগ ফাইলগুলি নিজে পরিচালনা করবেন বলে আশা করা হচ্ছে।
ইভান অ্যান্ডারসন

আইসিএস লগ ফাইলগুলি পরিষ্কার করার জন্য সিসিএলনির একটি বিকল্প রয়েছে !!!

উত্তর:


22

এটি করার জন্য আপনাকে একটি নির্ধারিত টাস্ক চালাতে হবে। এখানে একটি পাওয়ারশেল স্ক্রিপ্ট রয়েছে যা কাজ করা উচিত।

set-location c:\windows\system32\Logfiles\W3SVC1\ -ErrorAction Stop
foreach ($File in get-childitem -include *.log) {
   if ($File.LastWriteTime -lt (Get-Date).AddDays(-30)) {
      del $File
   }
}

এটি 30 দিনেরও বেশি আগে সর্বশেষ পরিবর্তনকৃত যে কোনও কিছুকে শুদ্ধ করে তুলতে হবে। আপনার লগ ফাইলগুলি যেখানেই সংরক্ষণ করা হয়েছে সেখানে প্রথম লাইনে পাথ পরিবর্তন করুন। আপনি -30 ফাইল ধরে রাখতে চান তবে -30 পরিবর্তন করুন। -30 এর অর্থ আপনি 30 দিনেরও বেশি পুরানো কিছু মুছবেন।

আপনি এই নিবন্ধটি একবার দেখে নিতে পারেন যা ফাইলআইনফো অবজেক্টের জন্য বিভিন্ন বৈশিষ্ট্য দেখায় যদি আপনি লাস্ট রাইটটাইম ব্যবহার করতে না চান।


1
উইন্ডোজ সার্ভার ২০০৮ আর ২ (পিএস ২.০) এ আমাকে গেট-চাইল্ড আইটেম কলটি সংশোধন করতে হয়েছিলGet-ChildItem *.* -include *.log
ররিউডস

4

আপনি নিজের তৈরি করতে পারেন, তবে আমি বিশ্বাস করি কোনও চালাক ব্যক্তি ইতিমধ্যে আপনার জন্য এটি লিখেছেন। পরীক্ষা করে দেখুন IISLogs & IISLogs লাইট!

যদি আপনার সমস্ত কাজ লগগুলি মুছে ফেলা হয় তবে লগিং এর প্রয়োজন না হলে আপনি এটি বন্ধ করতে পারেন! আপনি আপনার সার্ভারকে প্রচুর I / O সংরক্ষণ করবেন!


1
কেবলমাত্র একটি আপডেট, তবে আইআইএসলোগস লাইট কিছু সময়ের জন্য উপলভ্য হয়নি এবং আইআইএসএলগগুলি সস্তা নয়
বেকন বিট

3

আমি বর্তমানে খুব সাধারণ ব্যাচের ফাইল স্ক্রিপ্ট ব্যবহার করে এটি করছি:

forfiles -p C:\inetpub\logs\LogFiles\ -s -m *.log -d -180 -c "cmd /C DEL @File"

এটি প্রতিদিন চালু করার জন্য আমি একটি তফসিল টাস্ক এন্ট্রিও করেছি এবং এমনকি সেই ফোল্ডারে ফাইল সংক্ষেপণ বৈশিষ্ট্য সক্রিয় করেছি: এই সমস্ত জিনিস একসাথে আইআইএস ফাইলগুলির সাথে আমার সমস্যার সমাধান করে।

ব্যাচ ফাইলে স্যুইচগুলির ব্যাখ্যা:

  • -এস বা / এস: সমস্ত সাবফোল্ডারে পুনরাবৃত্তি
  • -পি বা / পি: পথ
  • -ম বা / এম: ফাইল মাস্ক
  • -ড বা / ডি: দিনের সংখ্যা (-180 = 180 দিনের চেয়ে পুরানো)
  • -c বা / C: চালানোর জন্য আদেশ

যদি আপনি একটি কার্যকর টেকসই পাওয়ারশেল বিকল্পের সন্ধান করছেন, তবে এই অন্যান্য উত্তরটি দেখুন : আইআইএস লগফিলস ফোল্ডারটি কীভাবে সঠিকভাবে হ্রাস করতে হবে সে সম্পর্কে অন্যান্য পরামর্শের জন্য, এই পোস্টটি দেখুন


2

ঠিক আছে, আপনি যদি নিয়মিত সেগুলি পরিষ্কার করতে চান তবে আপনি আইআইএসে অনুরোধ লগইনটি অক্ষম করবেন না কেন? আপনি গুগল অ্যানালিটিকস বা অন্য কোনও পরিষেবাদির মতো কিছু ব্যবহার করতে পারেন, আইআইএস লগের পারফরম্যান্সকে প্রভাবিত করে এবং সমস্ত ডিস্কের জায়গা খায় তবে মাথা ব্যথা এড়াতে অনেক লোক এটি দেখতে পান তবে এটি আপনার অবশ্যই প্রয়োজনীয়তার উপর নির্ভর করে।


1

মাইক্রোসফ্ট তার ওয়েবসাইটে একটি স্ক্রিপ্ট প্রস্তাব করে

নীচে আমি আমার প্রয়োজনের জন্য ব্যবহার করছি একটি পরিবর্তিত সংস্করণ using

Wscript.Echo "Starting log removal"
sLogFolder = "d:\retentiontest"

iMaxAge = 30   'in days
Set objFSO = CreateObject("Scripting.FileSystemObject")
set colFolder = objFSO.GetFolder(sLogFolder)
Wscript.Echo "Removing log files from folder: " & colFolder

For Each colSubfolder in colFolder.SubFolders
        Set objFolder = objFSO.GetFolder(colSubfolder.Path)
        Set colFiles = objFolder.Files
        For Each objFile in colFiles
                iFileAge = now-objFile.DateLastModified
                if iFileAge > (iMaxAge+1)  then
                        Wscript.Echo "Removing File: " & objFile.Name
                        objFSO.deletefile objFile, True

                end if
        Next
Next

নোট করুন যে আমি "তারিখের তৈরি" থেকে "ডেটলাস্টমোডিফায়েড" এ পরিবর্তিত হলাম যেহেতু প্রতিলিপি তৈরির তারিখটি গতবার পরিবর্তিত সময়ের চেয়ে পরে হতে পারে, অনুলিপি করা ফাইলগুলির ক্ষেত্রেও হতে পারে। আপনি সম্ভবত সম্প্রতি আপডেট হওয়া ফাইলগুলি সরাতে চান না।

তারপরে এটি cscript.exe (উদাহরণস্বরূপ cscript.exe d:\scripts\logRetentionScript.vbs) ব্যবহার করে চালান ।


0

সার্ভারে একটি নির্ধারিত টাস্ক তৈরি করুন। ক্রিয়া বিভাগে, আপনি চান:

  • ক্রিয়া: একটি প্রোগ্রাম শুরু করুন
  • সেটিংস: প্রোগ্রাম = ফোরফাইলস
  • যুক্তি যুক্ত করুন: -p "সি: \ ইনপপ \ লগস \ লগফিলস" -স-মি / ডি -45 / সি "সেন্টিমিটার / সি ডেল @ পথ"
  • শুরু: সি: \

এটি একটি দৈনিক বা সাপ্তাহিক সময়সূচী দিন। সম্পন্ন.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.