# Environment Variables
| `ADNV_CONFIG_FILE` | `adnv.yml` | Path to config file or directory |
| `ADNV_GITHUB_TOKEN` | | GitHub personal access token for private repos |
| `ADNV_CHECK_LAST` | | Search window for `check`, as a duration |
| `ADNV_CHECK_SINCE` | | Search window for `check`, as an RFC 3339 date |
| `ADNV_CHECK_OUTPUTS` | | Output backends for `check` |
| `ADNV_CHECK_INCLUDE` | | Keep only versions matching this regex |
| `ADNV_CHECK_EXCLUDE` | | Drop versions matching this regex |
| `RUST_LOG` | `info` | Log level filter (`trace`, `debug`, `info`, `warn`, `error`) |
## Authentication
### GitHub
Set `ADNV_GITHUB_TOKEN` to access private repositories and avoid API rate limits. Without it GitHub allows 60 requests an hour:
```shell
export ADNV_GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx
```
Used by:
- `check` with GitHub git sources
- `import` action with `!github` sources
- Docker image listing from GitHub Container Registry
### GitLab
**There is no GitLab token.** Every GitLab client is built unauthenticated, so private GitLab projects and container registries are not reachable. Earlier versions of this page documented a `GITLAB_TOKEN`; no code has ever read it.
## Logging
Control log verbosity:
```shell
# Show debug logs
RUST_LOG=debug adnv outdated
# Show only warnings
RUST_LOG=warn adnv check --last 24h
# Per-module filtering
RUST_LOG=adnv=debug,reqwest=warn adnv run
```