Переміщаємо і чистимо логи exchange 2018, блог it - шника

Переміщаємо і чистимо логи exchange 2013, блог it - шника

При впровадженні Exchange виникає неприємна ситуація - ми начебто всі вимоги за місцем для Exchange виконали, але воно невблаганно зменшується ... починаємо розбиратися і розуміємо що всілякі логи ростуть швидше ніж ми припускали, так як же з ними боротися? Далі описані способи по усіканню \ переміщенню різних логів, загалом все те, що допоможе нам вирішити проблему. Окремо зауважу, що вся інформація є в технічній бібліотеці technet 🙂 і тут вона всього лише підібрана для певної задачі: нагадати способи вирішення проблем з нестачею місця через розростання логів.

Transaction logs

Журнал транзакцій найважливіший елемент Exchange. Наведемо приклад: при відправці повідомлення транзакція спочатку записується в журнал. Поки транзакція не передалася в базу даних Exchange, ці дані існують тільки в системній пам'яті і журналах транзакцій. У разі аварії ви втрачаєте вміст пам'яті, і все, що у вас залишається, це записи в журналі транзакцій. Ці журнали важливі для відновлення пошкодженої бази. Те ж саме стосується і інших транзакцій: отриманих повідомлень, видалених елементів і повідомлень, переміщених в інші папки. Відповідно дані логи ростуть дуже швидко, як же їх зменшити?

2. Включення Circular Logging

При включенні circular logging журнал транзакцій очищається відразу після того, як транзакції поміщаються в базу даних.

За допомогою EAC Circular Logging включається так:

Переміщаємо і чистимо логи exchange 2013, блог it - шника

При включеному циклічному веденні журналу розширеного обробника сховищ додаткові файли журналу не створюються, натомість при необхідності перезаписується поточний файл журналу. Однак в середовищі з безперервною реплікацією (DAG) файли журналу необхідні для доставки і перетворення журналів. В результаті при включенні циклічного ведення журналу безперервної реплікації поточний файл журналу не буде перезаписано, а для процесу доставки і перетворення журналів створюються закриті файли журналу, тобто забезпечується безперервність журналів, а журнали не видаляються, поки вони необхідні для реплікації. Служба реплікації Microsoft Exchange і служба банку даних Microsoft Exchange взаємодіють за допомогою віддаленого виклику процедур (RPC), що стосуються того, які файли журналу можуть бути видалені.

3.Перемещеніе Transaction logs

Ну і врешті-решт ми можемо перемістити логи разом з базою в інше місце \ інший диск.

Для цього є прекрасний командлет Move-DatabasePath. Наведемо приклад перенесення бази даних MDB01 і журналів транзакцій на диск M до відповідних директорії:

Move-Databasepath "MDB01" -EdbFilepath "M: \ DB \ MDB01 \ database \ mdb01.edb" -LogFolderpath "M: \ DB \ MDB01 \ logs \"

Переміщаємо і чистимо логи exchange 2013, блог it - шника

Queue Database

Це звичайно не логи, але якщо вам необхідно звільнити місце то переміщення даної бази може вам допомогти. Queue Database - це тимчасове сховище повідомлень, які мають наступну стадію обробки. Кожна чергу представляє собою логічний набір повідомлень, які обробляються сервером транспорту в певному порядку. Все черзі зберігаються в одній базі даних ESE. Черги розміщуються тільки на серверах поштових скриньок або на прикордонних транспортних серверах. Місцезнаходження бази даних черзі і її журналів транзакцій контролюється ключами в XML-файлі конфігурації програми% ExchangeInstallPath% Bin \ EdgeTransport.exe.config.

Все що ми можемо зробити з нею, це перемістити її в інше місце. Досить вичерпна інформація про переміщення знаходиться в бібліотеці technet в статті Change the Location of the Queue Database

TransportLogs

Журнали транспорту надають відомості про те, що відбувається в транспортному конвеєрі. Досить вичерпна інформація про відключення \ включенні логування та їх переміщенні знаходиться в бібліотеці technet в статті Transport Logs.

  • Agent logs
  • Connectivity logs
  • Message tracking and delivery reports
  • Pipeline tracing
  • Protocol logs
  • Routing table logs

Наприклад змінити шлях зберігання Protocollogs через EAC: servers \ servers \ вибрати сервер \ transport logs \ protocol log

Переміщаємо і чистимо логи exchange 2013, блог it - шника

Наприклад змінити шлях зберігання Message Tracking через EAC: servers \ servers \ вибрати сервер \ transport logs \ message tracking log.

Переміщаємо і чистимо логи exchange 2013, блог it - шника

Окремо зауважу що перемістити можна тільки в локальну папку. Проблему з розміщенням на мережевому ресурсі можна обійти використавши команду mklink і створивши посилання на мережевий ресурс. Наприклад створіть посилання mklink / d «D: \ HubReceiveSMTPLog» \\ Server \ HubReceiveSMTPLog. тепер ви можете використовуючи командлет Set-TransportService і параметр -ReceiveProtocolLogPath «D: \ HubReceiveSMTPLog» зберігати ReceiveSMTP логи на мережевому ресурсі. Даний спосіб підходить і для інших логів.

IISlogfiles

У балці IIS у вас буде інформація наприклад про підключення вашого ipad за допомогою протоколу activesync. Розмір IIS логів, якщо за ним не встежити може бути дуже великим. Як же їх автоматом видалити або перемістити на інший диск?

1.Автоматіческое видалення логів

Запускайте щодня через scheduler наступний скрипт ps1 (змініть шлях зберігання логів якщо потрібно) і всі ваші логи IIS старше 30 днів будуть видалятися не вимагаючи вашої уваги.

foreach ($ File in get-childitem)

if ($ File.LastWriteTime -lt (Get-Date) .AddDays (-30))

Запускати скрипт ps1 через scheduler ви можете наступним чином:

  • Створіть завдання в scheduler
  • Створіть action: start a program
  • В поле program / script: C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell.exe
  • В поле add arguments (optional): -command "pathTOscript \ name.ps1"

Переміщаємо і чистимо логи exchange 2013, блог it - шника

2.Перемещеніе логів в інше місце

  • Відкрийте IIS Manager from Administrative Tools і виберете Default Web Site.

Переміщаємо і чистимо логи exchange 2013, блог it - шника

  • Відкрийте Logging (клацніть два рази на іконці Logging)
  • Змініть місце зберігання логів

Переміщаємо і чистимо логи exchange 2013, блог it - шника

  • Збережіть зміни. Наступний файл логу запишеться в нове місце зберігання
  • Теж саме можна зробити при мощі powershell:

Set-ItemProperty 'IIS: \ Sites \ Default Web Site' -name logfile.directory «D: \ IISLogs»

папка Logging

І нарешті папка Logging яка за замовчуванням знаходиться в 'C: \ Program Files \ Microsoft \ Exchange Server \ V15 \ Logging. Тут зберігається безліч балок різних служб, і може займати досить велику кількість місця. Особливо виділяються за обсягом diagnostic and performance log files які знаходяться в папці 'C: \ Program Files \ Microsoft \ Exchange Server \ V15 \ Logging \ Diagnostics

На просторах інтернету було знайдено просте рішення цього питання, запускайте щодня через scheduler і все логи з цих папок старше 14 днів перестануть вас турбувати 🙂

gci 'C: \ Program Files \ Microsoft \ Exchange Server \ V15 \ Logging', 'C: \ inetpub \ logs' -Directory | gci -Include '* .log', '*. blg' -Recurse |. LastWriteTime -lt (Get-Date) .AddDays (-14) | Remove-Item

P.S. Я особисто віддаю перевагу різати тільки diagnostics:

gci 'C: \ Program Files \ Microsoft \ Exchange Server \ V15 \ Logging \ Diagnostics' -Directory | gci -Include '* .log', '*. blg' -Recurse |. LastWriteTime -lt (Get-Date) .AddDays (-2) | Remove-Item