Skip to content
Merged

sync #1559

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
153 commits
Select commit Hold shift + click to select a range
32c21b0
feat(docs): Update Docker install guide and templates
Feb 18, 2026
57118bc
Merge pull request #1500 from netalertx/next_release
jokob-sk Feb 22, 2026
2f1e506
BE+FE: Unstable devices list (3 status changes in 1h)
jokob-sk Feb 22, 2026
1a364e2
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 22, 2026
53b2596
Add LLMs.txt
adamoutler Feb 23, 2026
cb0b3b6
Update front/llms.txt
adamoutler Feb 23, 2026
fe22659
coderabbit suggested changes
adamoutler Feb 23, 2026
4316a43
Apply CodeRabbit suggestions
MrMeatikins Feb 23, 2026
c7e7549
Simplify README to link official docs
MrMeatikins Feb 23, 2026
1462592
Revert env variables per jokob-sk review
MrMeatikins Feb 23, 2026
446545e
Merge pull request #1534 from MrMeatikins/feat/docker-install-docs
jokob-sk Feb 23, 2026
123f715
Merge pull request #1533 from adamoutler/llm-docs
jokob-sk Feb 23, 2026
8fc78f0
BE: Better arpo-scan accuracy w/ system optimization
jokob-sk Feb 23, 2026
54e9d52
DOCS: readme
jokob-sk Feb 23, 2026
a309f99
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 23, 2026
c192f2c
FE: mixed case on MACs work
jokob-sk Feb 23, 2026
f1fc9f2
FE: README
jokob-sk Feb 23, 2026
0172ab4
Translated using Weblate (Japanese)
Feb 23, 2026
f4bc9c9
Translated using Weblate (Spanish)
mriosriquelme Feb 23, 2026
d06301a
Translated using Weblate (French)
GitSpoon Feb 23, 2026
fae6117
Translated using Weblate (Italian)
mapi68 Feb 23, 2026
1fa3814
Translated using Weblate (Catalan)
Feb 23, 2026
0b32a06
Translated using Weblate (Chinese (Simplified Han script))
Feb 23, 2026
786cc5e
feat: Implement network topology management with API integration
jokob-sk Feb 25, 2026
00042ab
refactor: Clean up whitespace and improve API token verification in n…
jokob-sk Feb 25, 2026
63cef59
Refactor network API calls to use centralized authentication context …
jokob-sk Feb 26, 2026
9d64665
fix: Remove trailing whitespace and clean up formatting in version.php
jokob-sk Feb 26, 2026
686a713
FE: lower case MAC issues #1538
jokob-sk Feb 27, 2026
4c0d5c7
refactor: Consolidate tab initialization logic using shared utility f…
jokob-sk Feb 27, 2026
d2ebe0d
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Feb 27, 2026
173ffbe
feat: Add cache clearing logic for imported settings in state update
jokob-sk Feb 27, 2026
b74b803
feat: Add devFlapping attribute to device management and update relat…
jokob-sk Feb 27, 2026
24e2036
DOCS: flappin/usntable status addition
jokob-sk Feb 27, 2026
58e32a5
feat: Refactor device column management and integrate new device-colu…
jokob-sk Feb 28, 2026
d9c263d
feat: Update cache handling to normalize legacy device data format an…
jokob-sk Feb 28, 2026
0e18e34
DOCS: flapping/unstable status addition
jokob-sk Feb 28, 2026
9894009
Merge branch 'main' of github.com:netalertx/NetAlertX
jokob-sk Feb 28, 2026
4d0b7c9
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Feb 28, 2026
43667a3
DOCS: flapping/unstable status addition
jokob-sk Feb 28, 2026
6b32087
Merge branch 'main' of github.com:netalertx/NetAlertX
jokob-sk Feb 28, 2026
4dc2a63
DOCS: flapping/unstable status addition
jokob-sk Feb 28, 2026
e57fd2e
fix: update body text color in dark theme and remove unnecessary cons…
jokob-sk Feb 28, 2026
814ba02
feat: implement languages endpoint and refactor language handling to …
jokob-sk Feb 28, 2026
85badb0
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Feb 28, 2026
11499a6
chore: jokob-sk->netalertx
jokob-sk Feb 28, 2026
f727580
Merge branch 'main' of github.com:netalertx/NetAlertX
jokob-sk Feb 28, 2026
f5e411d
chore: jokob-sk->netalertx
jokob-sk Feb 28, 2026
e15c68d
feat: enhance cacheStrings function to re-fetch plugin language strin…
jokob-sk Mar 1, 2026
b96ace0
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 1, 2026
3d4aba4
Translated using Weblate (Chinese (Simplified Han script))
Feb 28, 2026
563cb4b
Translated using Weblate (Portuguese (Brazil))
weblate Feb 28, 2026
dbe65b2
Translated using Weblate (Turkish)
weblate Feb 28, 2026
247a967
Translated using Weblate (Polish)
weblate Feb 28, 2026
a6ce417
Translated using Weblate (Norwegian Bokmål)
weblate Feb 28, 2026
66532c5
Translated using Weblate (German)
weblate Feb 28, 2026
c1adfd3
Translated using Weblate (Arabic)
weblate Feb 28, 2026
ea5585a
Add database cleanup for Sessions and optimize queries
jokob-sk Mar 1, 2026
584aba2
Set journal size limit to 10 MB for SQLite connections to prevent unb…
jokob-sk Mar 1, 2026
d9608b4
Add database performance tuning guidelines and user-configurable WAL …
jokob-sk Mar 1, 2026
a94f3d7
DOCS: PRAGMA_JOURNAL_SIZE_LIMIT
jokob-sk Mar 1, 2026
deb0d16
LNG: PRAGMA_JOURNAL_SIZE_LIMIT
jokob-sk Mar 1, 2026
8e6efc3
sleeping devices status #1519
jokob-sk Mar 2, 2026
0497c28
Fix formatting issues in DATABASE.md for improved readability
jokob-sk Mar 2, 2026
15807b7
Add unit and integration tests for device down event handling and sle…
jokob-sk Mar 2, 2026
3e237bb
Normalize MAC addresses in SQL queries and add devCanSleep column to …
jokob-sk Mar 2, 2026
6724d25
Refactor network tree data structure and improve device status handling
jokob-sk Mar 2, 2026
50125f0
DOCS: statuses
jokob-sk Mar 2, 2026
da63acb
Translated using Weblate (Italian)
mapi68 Mar 1, 2026
67aa46f
Merge branch 'origin/main' into Weblate.
weblate Mar 2, 2026
3a73817
Enhance device down event handling for sleeping devices and improve d…
jokob-sk Mar 2, 2026
bc4f419
Enhance device MAC address handling in tests to ensure lowercase norm…
jokob-sk Mar 2, 2026
95f411d
DOCS: statuses
jokob-sk Mar 2, 2026
93df52f
Fix healthcheck for non-0.0.0.0. will pass as long as reachable.
adamoutler Mar 2, 2026
b0aa5d0
Fix startup script matching for skips
adamoutler Mar 2, 2026
0555105
Detect sysctls only, don't modify sysctls; allow user to modify.
adamoutler Mar 2, 2026
a329c5b
Tidy up plugin logic
adamoutler Mar 2, 2026
c1d53ff
Update docker compose and unit tests
adamoutler Mar 2, 2026
8ab9d9f
Update docs
adamoutler Mar 2, 2026
ab74307
Add next scan ETA display and update app state with scan timing infor…
jokob-sk Mar 3, 2026
d2bc841
Translated using Weblate (Catalan)
Mar 2, 2026
9f964be
Translated using Weblate (German)
weblate Mar 2, 2026
c89b2de
Translated using Weblate (Ukrainian)
Mar 2, 2026
6e8a3d8
Translated using Weblate (Turkish)
blomusti Mar 2, 2026
550f59b
Translated using Weblate (Portuguese (Brazil))
GoldBull3t Mar 2, 2026
04db68e
Translated using Weblate (Japanese)
Mar 2, 2026
dd564b2
Translated using Weblate (Spanish)
weblate Mar 2, 2026
b451066
Translated using Weblate (Chinese (Simplified Han script))
ptsa Mar 2, 2026
b7e1cb1
Translated using Weblate (Chinese (Simplified Han script))
Mar 2, 2026
f3bf37b
Translated using Weblate (French)
Mar 2, 2026
5a65d80
Translated using Weblate (Norwegian Bokmål)
PrinsGeryha Mar 2, 2026
4f239be
Translated using Weblate (Portuguese (Portugal))
SantosSi Mar 2, 2026
14362d2
Translated using Weblate (Russian)
YoSafeguard Mar 2, 2026
594c2fe
Translated using Weblate (Arabic)
bo3bdo Mar 2, 2026
27f3496
Translated using Weblate (Polish)
Mar 2, 2026
e8c43af
Merge branch 'origin/main' into Weblate.
weblate Mar 3, 2026
5be7bbe
Enhance scan ETA display with current scanning state and add localiza…
jokob-sk Mar 3, 2026
2a4e6ba
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 3, 2026
4637ec6
Translated using Weblate (Japanese)
Mar 3, 2026
99de69e
Translated using Weblate (Italian)
mapi68 Mar 3, 2026
8361f0a
Merge branch 'origin/main' into Weblate.
weblate Mar 3, 2026
0f20fb3
Enhance scanning state handling and localization updates across multi…
jokob-sk Mar 3, 2026
da4d8a9
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 3, 2026
3ba1b69
Translated using Weblate (Italian)
mapi68 Mar 3, 2026
9fe8090
Translated using Weblate (Japanese)
Mar 3, 2026
1da3c14
Merge branch 'origin/main' into Weblate.
weblate Mar 3, 2026
ac407bd
Update next scan message for clarity in device management
jokob-sk Mar 3, 2026
c533c22
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 3, 2026
ffbcc2a
Translated using Weblate (Japanese)
Mar 3, 2026
b199731
Merge branch 'origin/main' into Weblate.
weblate Mar 3, 2026
ea77112
next scan dsiplay DRY
jokob-sk Mar 3, 2026
01b6b9f
whitespace
jokob-sk Mar 3, 2026
1923a06
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 3, 2026
76a259d
Fix DataTable redraw logic and update empty message handling
jokob-sk Mar 3, 2026
37f8a44
Update devIpLong field to String and handle empty string coercion for…
jokob-sk Mar 3, 2026
ba26f34
Enhance device section UI with collapsible filters and default collap…
jokob-sk Mar 3, 2026
f1496b4
Fix docker compose unit test to remove ARP FLUX warning.
adamoutler Mar 4, 2026
5c0f29b
coderabbit suggestions
adamoutler Mar 4, 2026
c73ce83
Refactor ensure_future_datetime to simplify logic and remove max_retr…
jokob-sk Mar 4, 2026
da23880
Update docs/docker-troubleshooting/arp-flux-sysctls.md
adamoutler Mar 4, 2026
a532c98
Update test/docker_tests/test_entrypoint.py
adamoutler Mar 4, 2026
b854206
Address review comments from PR #1544
adamoutler Mar 4, 2026
89811cd
Merge pull request #1544 from adamoutler/built-in-tests
jokob-sk Mar 4, 2026
a004898
LNG: Indonesian
jokob-sk Mar 5, 2026
17d95d8
Translated using Weblate (Italian)
mapi68 Mar 5, 2026
2921614
Translated using Weblate (Russian)
YoSafeguard Mar 5, 2026
05b63cb
Merge branch 'origin/main' into Weblate.
weblate Mar 5, 2026
5a6de6d
LNG: moved languages.json so weblate skips it
jokob-sk Mar 5, 2026
d8d0904
Merge branch 'main' of github.com:netalertx/NetAlertX
jokob-sk Mar 5, 2026
f8c09d3
Enhance scan ETA display logic to reload data for newly discovered de…
jokob-sk Mar 5, 2026
1d1a804
Translated using Weblate (Russian)
YoSafeguard Mar 5, 2026
4eb5947
Update language folder path to include all language definitions
jokob-sk Mar 6, 2026
abf024d
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 6, 2026
d49abd9
Enhance code standards, update contributing guidelines, and add tests…
jokob-sk Mar 7, 2026
0b0c88f
Translated using Weblate (Russian)
YoSafeguard Mar 7, 2026
165c9d3
Translated using Weblate (French)
GitSpoon Mar 7, 2026
aba1ddd
Handle JSON decoding errors in _get_data function
jokob-sk Mar 8, 2026
2771a6e
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 8, 2026
e1d206c
BE: new_online defined incorrectly
jokob-sk Mar 9, 2026
a60ec9e
Merge branch 'main' of github.com:netalertx/NetAlertX
jokob-sk Mar 9, 2026
93fc126
docs: clarify ARP flux sysctl limitations with host networking
MrMeatikins Mar 9, 2026
df3ca50
Address CodeRabbit review: Clarify sysctl behavior in host network mode
Mar 10, 2026
518608c
Translated using Weblate (French)
GitSpoon Mar 10, 2026
1351560
Translated using Weblate (Japanese)
Mar 10, 2026
b5b0bcc
work on stale cache #1554
jokob-sk Mar 13, 2026
78a8030
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 13, 2026
c9cb1f3
Add db_count to DeviceResult and update GraphQL response handling; lo…
jokob-sk Mar 13, 2026
9b71c21
Translated using Weblate (Italian)
mapi68 Mar 13, 2026
d19cb3d
Translated using Weblate (Chinese (Simplified Han script))
Mar 13, 2026
0766fb2
Merge branch 'origin/main' into Weblate.
weblate Mar 13, 2026
6f7d2c3
Rename db_count to dbCount in GraphQL response handling for consistency
jokob-sk Mar 13, 2026
bff87f4
Merge pull request #1552 from MrMeatikins/fix-arp-flux-docs-issue-1546
jokob-sk Mar 13, 2026
f75c53f
Implement notification text templates and update related settings for…
jokob-sk Mar 14, 2026
67cab9d
Merge branch 'main' of https://github.com/netalertx/NetAlertX
jokob-sk Mar 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .env
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ LOGS_LOCATION=/path/to/docker_logs

#ENVIRONMENT VARIABLES

TZ=Europe/Paris
PORT=20211

#DEVELOPMENT VARIABLES
Expand Down
8 changes: 4 additions & 4 deletions .github/skills/code-standards/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ description: NetAlertX coding standards and conventions. Use this when writing c

# Code Standards

- ask me to review before going to each next step (mention n step out of x)
- before starting, prepare implementation plan
- ask me to review before going to each next step (mention n step out of x) (AI only)
- before starting, prepare implementation plan (AI only)
- ask me to review it and ask any clarifying questions first
- add test creation as last step - follow repo architecture patterns - do not place in the root of /test
- code has to be maintainable, no duplicate code
- follow DRY principle
- follow DRY principle - maintainability of code is more important than speed of implementation
- code files should be less than 500 LOC for better maintainability

## File Length
Expand Down Expand Up @@ -64,7 +64,7 @@ Use timeNowUTC(as_string=False) for datetime operations (scheduling, comparisons

## String Sanitization

Use sanitizers from `server/helper.py` before storing user input.
Use sanitizers from `server/helper.py` before storing user input. MAC addresses are always lowercased and normalized. IP addresses should be validated.

## Devcontainer Constraints

Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/run-all-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ name: 🧪 Manual Test Suite Selector
on:
workflow_dispatch:
inputs:
run_all:
description: '✅ Run ALL tests (overrides individual selectors)'
type: boolean
default: false
run_scan:
description: '📂 scan/ (Scan, Logic, Locks, IPs)'
type: boolean
Expand All @@ -23,6 +27,10 @@ on:
description: '📂 ui/ (Selenium & Dashboard)'
type: boolean
default: false
run_plugins:
description: '📂 plugins/ (Sync insert schema-aware logic)'
type: boolean
default: false
run_root_files:
description: '📄 Root Test Files (WOL, Atomicity, etc.)'
type: boolean
Expand All @@ -42,12 +50,20 @@ jobs:
id: builder
run: |
PATHS=""
# run_all overrides everything
if [ "${{ github.event.inputs.run_all }}" == "true" ]; then
echo "final_paths=test/" >> $GITHUB_OUTPUT
exit 0
fi
# Folder Mapping with 'test/' prefix
if [ "${{ github.event.inputs.run_scan }}" == "true" ]; then PATHS="$PATHS test/scan/"; fi
if [ "${{ github.event.inputs.run_api }}" == "true" ]; then PATHS="$PATHS test/api_endpoints/ test/server/"; fi
if [ "${{ github.event.inputs.run_backend }}" == "true" ]; then PATHS="$PATHS test/backend/ test/db/"; fi
if [ "${{ github.event.inputs.run_docker_env }}" == "true" ]; then PATHS="$PATHS test/docker_tests/"; fi
if [ "${{ github.event.inputs.run_ui }}" == "true" ]; then PATHS="$PATHS test/ui/"; fi
if [ "${{ github.event.inputs.run_plugins }}" == "true" ]; then PATHS="$PATHS test/plugins/"; fi
# Root Files Mapping (files sitting directly in /test/)
if [ "${{ github.event.inputs.run_root_files }}" == "true" ]; then
Expand Down
31 changes: 18 additions & 13 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
# 🤝 Contributing to NetAlertX
# Contributing to NetAlertX

First off, **thank you** for taking the time to contribute! NetAlertX is built and improved with the help of passionate people like you.

---

## 📂 Issues, Bugs, and Feature Requests
## Issues, Bugs, and Feature Requests

Please use the [GitHub Issue Tracker](https://github.com/jokob-sk/NetAlertX/issues) for:
- Bug reports 🐞
- Feature requests 💡
- Documentation feedback 📖
Please use the [GitHub Issue Tracker](https://github.com/netalertx/NetAlertX/issues) for:
- Bug reports
- Feature requests
- Documentation feedback

Before opening a new issue:
- 🛑 [Check Common Issues & Debug Tips](https://docs.netalertx.com/DEBUG_TIPS#common-issues)
- 🔍 [Search Closed Issues](https://github.com/jokob-sk/NetAlertX/issues?q=is%3Aissue+is%3Aclosed)
- [Check Common Issues & Debug Tips](https://docs.netalertx.com/DEBUG_TIPS#common-issues)
- [Search Closed Issues](https://github.com/netalertx/NetAlertX/issues?q=is%3Aissue+is%3Aclosed)

---

## 🚀 Submitting Pull Requests (PRs)
## Submitting Pull Requests (PRs)

We welcome PRs to improve the code, docs, or UI!

Expand All @@ -29,25 +29,30 @@ Please:
- If relevant, add or update tests and documentation
- For plugins, refer to the [Plugin Dev Guide](https://docs.netalertx.com/PLUGINS_DEV)


## Code quality

- read and follow the [code-standards](/.github/skills/code-standards/SKILL.md)

---

## 🌟 First-Time Contributors
## First-Time Contributors

New to open source? Check out these resources:
- [How to Fork and Submit a PR](https://opensource.guide/how-to-contribute/)
- Ask questions or get support in our [Discord](https://discord.gg/NczTUTWyRr)

---

## 🔐 Code of Conduct
## Code of Conduct

By participating, you agree to follow our [Code of Conduct](./CODE_OF_CONDUCT.md), which ensures a respectful and welcoming community.

---

## 📬 Contact
## Contact

If you have more in-depth questions or want to discuss contributing in other ways, feel free to reach out at:
📧 [jokob@duck.com](mailto:jokob@duck.com?subject=NetAlertX%20Contribution)
[jokob.sk@gmail.com](mailto:jokob.sk@gmail.com?subject=NetAlertX%20Contribution)

We appreciate every contribution, big or small! 💙
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[![Docker Size](https://img.shields.io/docker/image-size/jokobsk/netalertx?label=Size&logo=Docker&color=0aa8d2&logoColor=fff&style=for-the-badge)](https://hub.docker.com/r/jokobsk/netalertx)
[![Docker Pulls](https://img.shields.io/docker/pulls/jokobsk/netalertx?label=Pulls&logo=docker&color=0aa8d2&logoColor=fff&style=for-the-badge)](https://hub.docker.com/r/jokobsk/netalertx)
[![GitHub Release](https://img.shields.io/github/v/release/jokob-sk/NetAlertX?color=0aa8d2&logoColor=fff&logo=GitHub&style=for-the-badge)](https://github.com/jokob-sk/NetAlertX/releases)
[![GitHub Release](https://img.shields.io/github/v/release/netalertx/NetAlertX?color=0aa8d2&logoColor=fff&logo=GitHub&style=for-the-badge)](https://github.com/netalertx/NetAlertX/releases)
[![Discord](https://img.shields.io/discord/1274490466481602755?color=0aa8d2&logoColor=fff&logo=Discord&style=for-the-badge)](https://discord.gg/NczTUTWyRr)
[![Home Assistant](https://img.shields.io/badge/Repo-blue?logo=home-assistant&style=for-the-badge&color=0aa8d2&logoColor=fff&label=Add)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)

Expand Down Expand Up @@ -168,9 +168,9 @@ Get notified about a new release, what new functionality you can use and about b
### 🔀 Other Alternative Apps

- [Fing](https://www.fing.com/) - Network scanner app for your Internet security (Commercial, Phone App, Proprietary hardware)
- [NetBox](https://netboxlabs.com/) - Network management software (Commercial)
- [NetBox](https://netboxlabs.com/) - The gold standard for Network Source of Truth (NSoT) and IPAM.
- [Zabbix](https://www.zabbix.com/) or [Nagios](https://www.nagios.org/) - Strong focus on infrastructure monitoring.
- [NetAlertX](https://netalertx.com) - The streamlined, discovery-focused alternative for real-time asset intelligence.
- [NetAlertX](https://netalertx.com) - The streamlined, discovery-focused choice for real-time asset intelligence and noise-free alerting.

### 💙 Donations

Expand Down Expand Up @@ -207,6 +207,7 @@ Proudly using [Weblate](https://hosted.weblate.org/projects/pialert/). Help out
### License
> GPL 3.0 | [Read more here](LICENSE.txt) | Source of the [animated GIF (Loading Animation)](https://commons.wikimedia.org/wiki/File:Loading_Animation.gif) | Source of the [selfhosted Fonts](https://github.com/adobe-fonts/source-sans)

_All product names, logos, and brands are property of their respective owners. All company, product and service names used in this website are for identification purposes only. Use of these names, logos, and brands does not imply endorsement._

<!--- --------------------------------------------------------------------- --->
[main]: ./docs/img/devices_split.png "Main screen"
Expand Down
2 changes: 1 addition & 1 deletion back/app.conf
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# Generated: 2022-12-30_22-19-40 #
# #
# Config file for the LAN intruder detection app: #
# https://github.com/jokob-sk/NetAlertX #
# https://github.com/netalertx/NetAlertX #
# #
#-----------------AUTOGENERATED FILE-----------------#

Expand Down
3 changes: 3 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ services:
- CHOWN # Required for root-entrypoint to chown /data + /tmp before dropping privileges
- SETUID # Required for root-entrypoint to switch to non-root user
- SETGID # Required for root-entrypoint to switch to non-root group
sysctls: # ARP flux mitigation for host networking accuracy
net.ipv4.conf.all.arp_ignore: 1
net.ipv4.conf.all.arp_announce: 2
volumes:

- type: volume # Persistent Docker-managed Named Volume for storage
Expand Down
2 changes: 1 addition & 1 deletion docs/API_OLD.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ You can access the following files:

| File name | Description |
|----------------------|----------------------|
| `notification_json_final.json` | The json version of the last notification (e.g. used for webhooks - [sample JSON](https://github.com/jokob-sk/NetAlertX/blob/main/front/report_templates/webhook_json_sample.json)). |
| `notification_json_final.json` | The json version of the last notification (e.g. used for webhooks - [sample JSON](https://github.com/netalertx/NetAlertX/blob/main/front/report_templates/webhook_json_sample.json)). |
| `table_devices.json` | All of the available Devices detected by the app. |
| `table_plugins_events.json` | The list of the unprocessed (pending) notification events (plugins_events DB table). |
| `table_plugins_history.json` | The list of notification events history. |
Expand Down
4 changes: 2 additions & 2 deletions docs/BACKUPS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ There are four key artifacts you can use to back up your NetAlertX configuration
| File | Description | Limitations |
| ------------------------ | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `/db/app.db` | The application database | Might be in an uncommitted state or corrupted |
| `/config/app.conf` | Configuration file | Can be overridden using the [`APP_CONF_OVERRIDE`](https://github.com/jokob-sk/NetAlertX/tree/main/dockerfiles#docker-environment-variables) variable |
| `/config/app.conf` | Configuration file | Can be overridden using the [`APP_CONF_OVERRIDE`](https://github.com/netalertx/NetAlertX/tree/main/dockerfiles#docker-environment-variables) variable |
| `/config/devices.csv` | CSV file containing device data | Does not include historical data |
| `/config/workflows.json` | JSON file containing your workflows | N/A |

Expand All @@ -37,7 +37,7 @@ This includes settings for:

### Device Data

Stored in `/data/config/devices_<timestamp>.csv` or `/data/config/devices.csv`, created by the [CSV Backup `CSVBCKP` Plugin](https://github.com/jokob-sk/NetAlertX/tree/main/front/plugins/csv_backup).
Stored in `/data/config/devices_<timestamp>.csv` or `/data/config/devices.csv`, created by the [CSV Backup `CSVBCKP` Plugin](https://github.com/netalertx/NetAlertX/tree/main/front/plugins/csv_backup).
Contains:

* Device names, icons, and categories
Expand Down
43 changes: 25 additions & 18 deletions docs/DATABASE.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

# A high-level description of the database structure

An overview of the most important database tables as well as an detailed overview of the Devices table. The MAC address is used as a foreign key in most cases.
An overview of the most important database tables as well as an detailed overview of the Devices table. The MAC address is used as a foreign key in most cases.

## Devices database table

Expand All @@ -23,6 +23,7 @@
| `devLogEvents` | Whether events related to the device should be logged. | `0` |
| `devAlertEvents` | Whether alerts should be generated for events. | `1` |
| `devAlertDown` | Whether an alert should be sent when the device goes down. | `0` |
| `devCanSleep` | Whether the device can enter a sleep window. When `1`, offline periods within the `NTFPRCS_sleep_time` window are shown as **Sleeping** instead of **Down** and no down alert is fired. | `0` |
| `devSkipRepeated` | Whether to skip repeated alerts for this device. | `1` |
| `devLastNotification` | Timestamp of the last notification sent for this device. | `2025-03-22 12:07:26+11:00` |
| `devPresentLastScan` | Whether the device was present during the last scan. | `1` |
Expand All @@ -42,41 +43,47 @@
| `devParentRelType` | The type of relationship between the current device and it's parent node. By default, selecting `nic` will hide it from lists. | `nic` |
| `devReqNicsOnline` | If all NICs are required to be online to mark teh current device online. | `0` |

> [!NOTE]
> `DevicesView` extends the `Devices` table with two computed fields that are never persisted:
> - `devIsSleeping` (`1` when `devCanSleep=1`, device is offline, and `devLastConnection` is within the `NTFPRCS_sleep_time` window).
> - `devFlapping` (`1` when the device has changed state more than the flap threshold times in the trailing window).
> - `devStatus` — derived string: `On-line`, `Sleeping`, `Down`, or `Off-line`.


To understand how values of these fields influuence application behavior, such as Notifications or Network topology, see also:
To understand how values of these fields influuence application behavior, such as Notifications or Network topology, see also:

- [Device Management](./DEVICE_MANAGEMENT.md)
- [Network Tree Topology Setup](./NETWORK_TREE.md)
- [Notifications](./NOTIFICATIONS.md)


## Other Tables overview

| Table name | Description | Sample data |
|----------------------|----------------------| ----------------------|
| CurrentScan | Result of the current scan | ![Screen1][screen1] |
| Devices | The main devices database that also contains the Network tree mappings. If `ScanCycle` is set to `0` device is not scanned. | ![Screen2][screen2] |
| Events | Used to collect connection/disconnection events. | ![Screen4][screen4] |
| Online_History | Used to display the `Device presence` chart | ![Screen6][screen6] |
| Parameters | Used to pass values between the frontend and backend. | ![Screen7][screen7] |
| Plugins_Events | For capturing events exposed by a plugin via the `last_result.log` file. If unique then saved into the `Plugins_Objects` table. Entries are deleted once processed and stored in the `Plugins_History` and/or `Plugins_Objects` tables. | ![Screen10][screen10] |
| Plugins_History | History of all entries from the `Plugins_Events` table | ![Screen11][screen11] |
| Plugins_Language_Strings | Language strings collected from the plugin `config.json` files used for string resolution in the frontend. | ![Screen12][screen12] |
| Plugins_Objects | Unique objects detected by individual plugins. | ![Screen13][screen13] |
| Sessions | Used to display sessions in the charts | ![Screen15][screen15] |
| Settings | Database representation of the sum of all settings from `app.conf` and plugins coming from `config.json` files. | ![Screen16][screen16] |
|----------------------|----------------------| ----------------------|
| CurrentScan | Result of the current scan | ![Screen1][screen1] |
| Devices | The main devices database that also contains the Network tree mappings. If `ScanCycle` is set to `0` device is not scanned. | ![Screen2][screen2] |
| Events | Used to collect connection/disconnection events. | ![Screen4][screen4] |
| Online_History | Used to display the `Device presence` chart | ![Screen6][screen6] |
| Parameters | Used to pass values between the frontend and backend. | ![Screen7][screen7] |
| Plugins_Events | For capturing events exposed by a plugin via the `last_result.log` file. If unique then saved into the `Plugins_Objects` table. Entries are deleted once processed and stored in the `Plugins_History` and/or `Plugins_Objects` tables. | ![Screen10][screen10] |
| Plugins_History | History of all entries from the `Plugins_Events` table | ![Screen11][screen11] |
| Plugins_Language_Strings | Language strings collected from the plugin `config.json` files used for string resolution in the frontend. | ![Screen12][screen12] |
| Plugins_Objects | Unique objects detected by individual plugins. | ![Screen13][screen13] |
| Sessions | Used to display sessions in the charts | ![Screen15][screen15] |
| Settings | Database representation of the sum of all settings from `app.conf` and plugins coming from `config.json` files. | ![Screen16][screen16] |



[screen1]: ./img/DATABASE/CurrentScan.png
[screen2]: ./img/DATABASE/Devices.png
[screen4]: ./img/DATABASE/Events.png
[screen4]: ./img/DATABASE/Events.png
[screen6]: ./img/DATABASE/Online_History.png
[screen7]: ./img/DATABASE/Parameters.png
[screen10]: ./img/DATABASE/Plugins_Events.png
[screen11]: ./img/DATABASE/Plugins_History.png
[screen12]: ./img/DATABASE/Plugins_Language_Strings.png
[screen13]: ./img/DATABASE/Plugins_Objects.png
[screen13]: ./img/DATABASE/Plugins_Objects.png
[screen15]: ./img/DATABASE/Sessions.png
[screen16]: ./img/DATABASE/Settings.png

2 changes: 1 addition & 1 deletion docs/DEBUG_TIPS.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ If possible, check if your issue got fixed in the `_dev` image before opening a

> ⚠ Please backup your DB and config beforehand!

Please also search [open issues](https://github.com/jokob-sk/NetAlertX/issues).
Please also search [open issues](https://github.com/netalertx/NetAlertX/issues).

## 4. Disable restart behavior

Expand Down
Loading
Loading