Monitoring and Reporting
Monitoring and Reporting
Snyk's monitoring capabilities provide ongoing visibility into container security:
# Monitor an image for ongoing vulnerabilities
snyk container monitor myapp:latest --project-name="Production App"
# Set up monitoring with tags
snyk container monitor myapp:latest \
--project-tags="team=backend,env=prod,app=api"
# Create snapshot for compliance
snyk container test myapp:latest --json > compliance-snapshot.json
# Generate SBOM (Software Bill of Materials)
snyk container sbom myapp:latest --format=cyclonedx
Automated reporting through Snyk's API:
import requests
import json
# Snyk API configuration
API_TOKEN = 'your-api-token'
ORG_ID = 'your-org-id'
BASE_URL = 'https://api.snyk.io/v1'
headers = {
'Authorization': f'token {API_TOKEN}',
'Content-Type': 'application/json'
}
# Get all container projects
response = requests.get(
f'{BASE_URL}/org/{ORG_ID}/projects',
headers=headers,
params={'type': 'container'}
)
projects = response.json()['projects']
# Generate vulnerability report
for project in projects:
issues = requests.get(
f'{BASE_URL}/org/{ORG_ID}/project/{project["id"]}/issues',
headers=headers
).json()
print(f"\nProject: {project['name']}")
print(f"Critical: {issues['issueCountsBySeverity']['critical']}")
print(f"High: {issues['issueCountsBySeverity']['high']}")