Należy wsadowe tygodniowe usuwanie dziennika kolejki systemowej.Jak programowo usunąć dziennik kolejki systemu MSMQ?
5
A
Odpowiedz
1
MessageQueue mq = new MessageQueue(".\\Journal$");
mq.Purge();
lub
MessageQueue mq = new MessageQueue(".\\myQueue\\Journal$");
mq.Purge();
jeśli jego dla kolejki został utworzony. Upewnij się, że użytkownik ma odpowiednie uprawnienia. Zobacz: http://msdn.microsoft.com/en-us/library/system.messaging.messagequeue.aspx
1
MessageQueue mq = new MessageQueue("DIRECT=OS:computername\SYSTEM$;JOURNAL");
mq.Purge();
5
poprawny format dla kolejek systemowych:
FormatName:Direct=os:.\\System$;JOURNAL
Przetestowałem ten format w systemie Windows 7 i Windows 2003.
(kropka after os: oznacza localhost/local computer)
var systemJournalQueue = new MessageQueue("FormatName:Direct=os:.\\System$;JOURNAL");
var systemDeadLetterQueue = new MessageQueue("FormatName:Direct=os:.\\System$;DEADLETTER");
var systemDeadXLetterQueue =new MessageQueue("FormatName:Direct=os:.\\System$;DEADXACT"));
systemJournalQueue.Purge();
lub jeśli chcesz zachować N dni komunikatów można to zrobić:
private static void PurgeQueues(int archiveAfterHowManyDays, MessageQueue queue)
{
queue.Formatter = new XmlMessageFormatter(new Type[] { typeof(System.String) });
queue.MessageReadPropertyFilter.ArrivedTime = true;
using (MessageEnumerator messageReader = queue.GetMessageEnumerator2())
{
int counter = 0;
while (messageReader.MoveNext())
{
Message m = messageReader.Current;
if (m.ArrivedTime.AddDays(archiveAfterHowManyDays) < DateTime.Now)
{
queue.ReceiveById(m.Id);
counter++;
}
}
}
}
Powiązane problemy
- 1. MSMQ nie może usunąć lub usunąć kolejki
- 2. MSMQ Pobierz wszystkie prywatne kolejki
- 3. Przeniesienie wiadomości z kolejki martwej litery do kolejki wychodzącej MSMQ
- 4. ustawiania uprawnień na kolejki MSMQ w skrypcie
- 5. Jak mogę usunąć wiadomości z kolejki?
- 6. MSMQ i rejestrowanie
- 7. Jak interpretować tajemniczy dziennik systemu Windows APPCRASH?
- 8. Jak mogę usunąć plist programowo?
- 9. Jak ustawić dziennik usługi systemu Windows na poświadczeniach?
- 10. Usunąć plik z kolejki plupload?
- 11. Jak usunąć komunikat z kolejki JMS
- 12. Jak programowo zarejestrować długość kolejki zdarzeń AWT/Swing?
- 13. MSMQ Receive() metoda timeout
- 14. Dziennik zdarzeń systemu Windows a dzienniki tekstów
- 15. Jak programowo usunąć zainstalowany certyfikat użytkownika?
- 16. Usługa Msmq i WCF
- 17. Skalowalność MSMQ
- 18. Konsument konkurencyjny MSMQ
- 19. Czy można usunąć element kolejki według wartości?
- 20. Prawidłowy sposób hostowania * systemu Windows * Windows XPF MSMQ
- 21. Usunąć fokus programowo?
- 22. Czy MSMQ to dobry pomysł?
- 23. kolejka wiadomości dla systemu iOS/iPad - coś podobnego do MSMQ?
- 24. Jak mogę usunąć określone zadania z kolejki Resque bez usuwania całej kolejki?
- 25. Jak programowo zmienić bieżący motyw systemu Windows?
- 26. Jak programowo przenieść pasek zadań systemu Windows?
- 27. Jak programowo utworzyć punkt przywracania systemu?
- 28. Widok systemu Android layout_width - jak zmienić programowo?
- 29. Jak programowo utworzyć styl motywu systemu Android?
Prawidłowy format: var mq = nowa kolejka komunikatów ("FormatName: Bezpośredni = os. \\ System $; DZIENNIK"); –