Artykuły

A A A
Drukuj Ekportuj do PDF
Opublikowane: 2009.11.09 11:59 | Michał Bojko | Aktualizacja: 2011.10.02 15:49

Monitorowanie kolejki zadań w Project Server 2007

Aby sprawnie kontrolować kolejkę zadań w Project Server należy wyposażyć się w odpowiednie narzędzie. Poznaj różnice pomiędzy PWA Manage Queue Jobs, CodePlex Queue Watch i rozwiązaniu na SQL Server 2005 z użyciem DBMail.

Aby sprawnie kontrolować kolejkę zadań w Project Server, należy wyposażyć się w odpowiednie narzędzie. Można korzystać z dostępnego w PWA lub ze znajdującego się na CodePlex rozwiązania - Queue Watch. Można także spróbować stworzyć takie rozwiązanie samemu. Aby opracować narzędzie dostosowane do wymagań administratora, trzeba poznać cechy innych rozwiązań i wykorzystać najlepsze. Następnie należy je zaimplementować do własnego rozwiązania, spełniającego oczekiwania wymagającego administratora. Artykuł opisuje szczegółowo to rozwiązanie. Dołączone do niego zostały w formie screencasta: analiza i porównanie aplikacji do wsparcia administracji Project Server 2007.

Informacje o kolejce zadań w Project Server 2007

PWA Manage Queue Jobs pobiera dane o stanie kolejki korzystając z wielu obiektów na bazie Draft, na serwerze SQL Server.
Dane o stanie kolejki są przetrzymywane w tabelach:

  • MSP_QUEUE_PROJECT_GROUP
  • MSP_QUEUE_PROJECT_GROUP_ARCHIVE

Dane z tabel są agregowane do widoku MSP_QUEUE_PROJECT_GROUP_FULL_VIEW.
Strona „PWA Manage Queue Jobs" pobiera dane poprzez procedurę składowaną MSP_ProjQ_Get_Status_Of_Jobs_List.
Zatem pełny schemat obiektów bazodanowych do pobrania danych o stanie kolejki wygląda następująco:

Schemat bazy danych

Konstrukcja zapytania o stan kolejki

Najprostszą metodą pobrania danych o stanie kolejki będzie wykorzystanie widoku MSP_QUEUE_PROJECT_GROUP_FULL_VIEW.
Aby prawidłowo kontruować warunki należy znać znaczenie wartości liczbowych dla kolumn GRP_QUEUE_MESSAGE_TYPE oraz GRP_QUEUE_STATE.


Typ wiadomości(Message Type)

typy wiadomosci

Stany kolejki(Queue state)

Stan kolejki


Zapytanie może być skonstruowane w ten sposób:


DECLARE @endtimestamp DATETIME
DECLARE @starttimestamp DATETIME
SET @starttimestamp=CURRENT_TIMESTAMP-7
SET @endtimestamp=CURRENT_TIMESTAMP
SELECT
g.GRP_QUEUE_MESSAGE_TYPE
,g.GRP_QUEUE_PRIORITY,
,g.GRP_QUEUE_STATE
,g.PERCENT_COMPLETE
FROM MyServrer.PWA_Draft.MSP_QUEUE_PROJECT_GROUP_FULL_VIEW g
WHERE g.CREATED_DATE >= @starttimestamp
AND g.CREATED_DATE <= @endtimestamp
AND g.GRP_QUEUE_MESSAGE_TYPE IN (2,3,20,5,6,19,9,7,4,8,11,13,75,76,77,78,65,66,67,68,69,70,71,72,73,74,18,12,10,21,22,14,23,17,24,30,25,27,1,28,29,31,32,33,34,35,36,85,37,38,39,41,40,42,43,44,45,46,47,48,49,88,50,51,52,53,55,56,26,59,57,54,58,64,61,60,62,63,80,79,81,82,83,84,87,15,16,86)
AND g.GRP_QUEUE_STATE IN (8,9,5,6,2,3,7,1,10,12,11)
ORDER BY CREATED_DATE DESC

Instalacja rozwiązania

Znając budowę bazy danych dla kolejki Project Server 2007 oraz podstawową konstrukcję zapytania możemy przejść do instalacji rozwiązania na SQL Server.

  • W pierwszym kroku należy prawidłowo skonfigurować DBMail na SQL Server. Jeżeli serwer nie ma prawidłowo skonfigurowanej usługi, proponuję odwiedzić link E-Mail Functionality in SQL Server 2005. Z pomocą tego linku łatwo i przyjemnie można uruchomić możliwość wysyłania maili.
  • Następnie należy stworzyć nowy job na SQL Server Agent
  • W trzecim kroku trzeba zdefiniować harmonogram (Schedule) dla joba, czyli określić, jak często chcemy otrzymywać wiadomości z podsumowaniem od stanie kolejki.

Przykładowo może to wyglądać tak:

harmonogram

  • Teraz należy dodać nowy krok (step), a w nim umieścić treść skryptu dostępną pod linkiem: Monitor Kolejki Project Server 2007. Należy pamiętać, by:
    • zmodyfikować treść, zmieniając nazwę serwera oraz bazy danych,
    • zmienić adres e-mail administratora, do którego będzie wysyłany raport,
    • zmienić ustawienia interwału czasowego, tak aby raportować okres, który jest istotny w raporcie. Domyślnie jest to raport z ostatnich siedmiu dni,
  • Ostatnim krokiem jest zapisanie zadania

Od tego momentu SQL Server będzie informował administratora o stanie kolejki Project Server 2007.
Wynikiem działania będzie e-mail:

email

Screencast

Zapraszam do obejrzenia 9 minutowego screncasta (+dźwięk) z omówieniem trzech rozwiązań do monitorowania kolejki w Project Server 2007.

Screencast - monitorowanie kolejki Project Server 2007

Podsumowanie

Warto rozejrzeć się za narzędziami oferowanymi na rynku, aby zorientować się, jakie są ich możliwości, i wybrać najodpowiedniejsze. Gdy poznamy dostępne aplikacje monitorujące, bez trudu znajdziemy takie, które zaspokajają potrzeby administratora, a tym samym w pełni wspierają jego pracę w Project Server 2007.

Linki

Zasady działania kolejki Project Server 2007

Kolejkowanie w Project Server 2007

Krótka instrukcja konfiguracji SQL Server 2005 DBMail

E-Mail Functionality in SQL Server 2005

Skrypt SQL użyty w artykule

Monitor Kolejki Project Server 2007

CodePlex Queue Watch

Project Server 2007 Queue Watch Tool

Autor:

 

Michał Bojko

Pracuje w międzynarodowej firmie zajmującej się produkcją i wdrażaniem systemów Sharepoint.


Komentarze 3 Masz uwagi do tej strony? Napisz

grayman 2009.11.13 11:38
0 oceń pozytywnie   oceń negatywnie 0
avatar
 
Skrypt SQL użyty w artykule

Monitor Kolejki Project Server 2007 <Click>


Server Error404 - File or directory not found.
The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.
MCP, MCSA, CCNA
MichalBojko 2009.11.13 12:03
0 oceń pozytywnie   oceń negatywnie 0
avatar Ekspert WSS
 
poprawione.
dzięki za uwagę.

-----
pozdrawiam
Michał Bojko
MCTS - SQL Server 2005, MS Project 2007, MOSS 2007
Polish Sharepoint Group, VirtualStudy

Poznaj z nami Microsoft Office Sharepoint Server 2007 na Virtual Study - już w grudniu !!

pozdrawiam Michał Bojko

www.timeforsharepoint.pl

 

agborkowski 2010.03.09 13:00
0 oceń pozytywnie   oceń negatywnie 0
avatar
 

świetny art ! więcej takich :) !

Dodaj komentarz

avatar

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.

Autor Michał Bojko
avatar Ekspert WSS
 

Pracuję jako szef IT w firmie VTS. Wspieram organizację konferencji SharePoint:

- SharePoint 2010 Community Launch (maj 2010)

- Time For SharePoint (listopad 2010)

- Time For SharePoint 2011 - ITPro edition

- Time For SharePoint Punch - 2011

- Time For SharePoint 2012 - IV edycja

Załóż konto
CodeGuru to miejsce dla każdego programisty. Przez lata portal rozwijany był siłami społeczności i to właśnie społeczność programistów jest tutaj najważniejsza. CG od wielu lat gromadzi wokół siebie coraz większą grupę pasjonatów. Warto być jej częścią!

Dowiedz się więcej o CodeGuru

Geek Club - Windows Phone

 

MetroOne

Idź na górę strony