Uruchomienie analizy kodu
Niżej opisana jest kolejność wszystkich czynności potrzebnych do tego, żeby Q247 zaczęło pokazywać dane o kodzie. Sama konfiguracja konektora to dopiero pierwszy z pięciu kroków, a dwa ostatnie wykonuje się ręcznie i to one najczęściej zostają pominięte.
Objaw pominięcia jest zawsze ten sam i mylący: konektor pokazuje status Operacyjny, repozytoria są widoczne, a dashboardy pozostają puste.
Kolejność czynności
| Krok | Kto wykonuje | Ile trwa |
|---|---|---|
| 1. Wtyczka działa i zwraca dane | zespół wdrożeniowy | jednorazowo |
| 2. Konektor połączony z systemem kontroli wersji | administrator Q247 | kilka minut |
| 3. Repozytoria odkryte i widoczne w Źródłach | automatycznie | 5 do 10 minut |
| 4. Repozytoria przypisane do projektów wraz z interwałem | administrator Q247 | kilka minut |
| 5. Statusy kont ustawione zgodnie z tym, kto commituje | administrator Q247 | kilka minut plus przeliczenie |
1. Wtyczka
Analizę wykonuje Enterprise Plugin, w wariancie Cloud Plugin utrzymywanym przez Q247 albo Private Plugin działającym w infrastrukturze Klienta. Wybór wariantu i instalację opisuje Instalacja.
Zanim przejdziesz dalej, wdrożenie musi być widoczne w Konfiguracji, w sekcji Wtyczki.
2. Konektor
Dodaj konektor do systemu kontroli wersji, zgodnie z Konektorami. Najważniejsze przy tym kroku: konto serwisowe, na którym wygenerowano token, musi mieć dostęp do wszystkich repozytoriów przeznaczonych do analizy.
3. Odkrycie repozytoriów
Po zapisaniu konektora wtyczka odpytuje API i zgłasza znalezione repozytoria. Odczekaj od 5 do 10 minut i odśwież stronę, bo lista nie aktualizuje się sama. Repozytoria pojawią się w Źródłach.
Repozytoriów nie da się dodać ręcznie z tego panelu, poza wyjątkiem konektora Generic GIT, gdzie adresy podaje się wprost w formularzu.
4. Przypisanie do projektu
Skanowanie startuje dopiero wtedy, gdy repozytorium należy do projektu Q247. Z listy Źródeł możesz przypisać jedno repozytorium przez menu operacji przy wierszu albo zaznaczyć wiele i użyć belki operacji zbiorowych.
Formularz przypisania prosi o projekt oraz interwał skanowania:
- Co godzinę
- Codziennie, z wyborem strefy czasowej. Skanowanie rusza po północy w wybranej strefie.
Zalecany interwał docelowy to Codziennie. Metryki Q247 opisują dni i tygodnie, więc dobowe odświeżenie w pełni wystarcza, a rzadsze skanowanie oszczędza obciążenie wtyczki i repozytorium.
Przy pierwszym uruchomieniu warto jednak wybrać interwał godzinowy, bo pozwala potwierdzić w kilkanaście minut, że dane faktycznie się liczą. Interwał dzienny oznacza czekanie do najbliższej nocy, więc ewentualny błąd konfiguracji wychodzi dobę później. Po pierwszym udanym przebiegu przełącz na dzienny.
Skanowanie jest przyrostowe: przy każdym kolejnym przebiegu wtyczka cofa się o dwa tygodnie od ostatniego skanu, żeby złapać commity, które dotarły do repozytorium z opóźnieniem.
Zasady grupowania repozytoriów
Jedno repozytorium należy dokładnie do jednego projektu, ale jeden projekt może mieć wiele repozytoriów. Przypisanie repozytorium do innego projektu odłącza je od poprzedniego i przenosi razem z nim całą jego historię; pozostałe skutki tej operacji opisują Projekty.
Dziel repozytoria po wartości biznesowej, a nie po technologii. Jeśli produkt składa się z backendu, frontendu, aplikacji mobilnej i automatyzacji CI/CD, wszystkie te repozytoria należą do jednego projektu Q247. Podział jedno repozytorium na jeden projekt rozdrabnia metryki i utrudnia porównania, bo dashboardy projektu przestają odpowiadać czemukolwiek, co da się zestawić z planem czy budżetem.
Reguła jedno repozytorium na projekt ma sens tylko wtedy, gdy repozytoria faktycznie są niezależnymi produktami.
5. Statusy kont
Ten krok jest pomijany najczęściej, a bez niego pozostałe nie dają efektu widocznego dla użytkownika.
Osoby wykryte podczas skanowania repozytoriów dostają domyślnie status Inny. Konta z tym statusem nie są widoczne osobno w statystykach projektów ani zespołów: ich aktywność zlewa się w zbiorczy wiersz "Inni", więc dashboardy wyglądają na puste, mimo że commity zostały przetworzone.
Docelowy stan listy kont jest taki:
| Kto | Status | Dlaczego |
|---|---|---|
| Osoby, które obecnie commitują do repozytoriów | Aktywny (bez dostępu), a jeśli mają się logować do Q247, Aktywny (z dostępem) | są widoczne jako osobni uczestnicy, z własnymi metrykami |
| Osoby, które commitowały w przeszłości, a już nie pracują nad kodem | Nieaktywny | konto traci możliwość logowania, a lista kont odpowiada obecnemu składowi zespołu |
| Konta techniczne, boty i integracje | Pomijany | ich aktywność w ogóle nie wchodzi do wyliczeń |
Zmiana wygląda tak:
- Przejdź do Użytkowników i Zespołów.
- Odfiltruj albo posortuj listę po kolumnie Status konta, żeby zebrać konta ze statusem Inny.
- Zaznacz konta, zbiorowo przez pole wyboru w nagłówku tabeli albo pojedynczo.
- Z paska akcji zbiorczych wybierz status właściwy dla tej grupy.

Pasek podaje trzy operacje wprost, a pod przyciskiem z trzema kropkami kryją się pozostałe, w tym ustawienie statusu Pomijany i Nieaktywny.
Najprościej rozdzielić to na dwa przebiegi: najpierw zaznaczyć wszystkich obecnych kontrybutorów i ustawić im Aktywny (bez dostępu), potem zaznaczyć osoby, które odeszły z zespołu, i ustawić im Nieaktywny. Kolumna Data ostatniego incrementu pomaga je rozpoznać.
Po zmianie statusu statystyki wymagają przeliczenia, więc dane pojawią się z opóźnieniem.
Weryfikacja
Sprawdzaj w tej kolejności, bo każdy kolejny punkt ma sens tylko wtedy, gdy poprzedni jest spełniony:
- Status konektora pokazuje Operacyjny.
- Repozytoria widoczne na liście Źródeł.
- Data ostatniego skanowania wypełniona przy repozytorium. Wartość "Nigdy" oznacza, że skanowanie jeszcze nie ruszyło, najczęściej z powodu braku przypisania do projektu.
- Projekt widoczny na dashboardzie Pulpit.
- Osoby widoczne w statystykach projektu, co potwierdza wykonanie kroku 5.
Przy problemach na etapach 1 do 3 diagnostykę opisuje strona Konektory. Logi wtyczki (q247-plugin.log) pokazują, czy dane są wysyłane, i rozstrzygają, po której stronie szukać przyczyny.
Zobacz też
- Konektory: pola formularza, uprawnienia tokenu, statusy
- Źródła: lista odkrytych repozytoriów i operacje na nich
- Projekty: przypisywanie źródeł z perspektywy projektu
- Użytkownicy i Zespoły: statusy kont i operacje zbiorowe
- Instalacja Enterprise Plugin: wybór wariantu wtyczki i jej instalacja