В нас у KPIdata всі сервіси розділені на компоненти, кожному з яких відповідає окремий репозиторій

repo list

Коли кодова база розрослася - стало цікаво, як багато коду було написано, а саме: стандартний показник loc (кількість рядків коду). Для цього є готовий зручний інструмент CLOC. Встановити на Mac можна так

1
$ brew install cloc

Наявні також релізи і для багатьох інших ОС/пакетних менеджерів. Підтримується близько 200 мов. Подивитися повний список:

1
$ clock --show-lang

Оскільки нашою основною мовою є Python, було цікаво подивитися статистику саме для нього. Заходимо в папку з проектами і запускаємо

1
$ cloc --exclude-dir=venv --include-lang=Python .

output

За допомогою --exclude-dir можна задати папки, які не потрібно враховувати (в даному випадку, щоб бачити статистику лише по своєму коду, без сторонніх бібліотек). Аналогічно для Javascript можна заігнорувати node_modules чи vendor папки.

--include-lang - список мов, які потрібно опрацювати, в даному випадку лише одна. Останнім параметром йде шлях до папки, дерево якої потрібно просканувати (крапка означає поточну директорію).

Майже 19К рядків власного коду, не враховуючи коментарі. Досить непогано! В наступному пості про KPIdata, покажу який в нас code coverage, що буде не дуже вражаючим, але тим не менш, розгляну, які інструменти ми для цього використовуємо.

Ресурси