(
svc, project, feature_service_name, start_date, end_date, granularity, auto_mode
)
| 188 | |
| 189 | |
| 190 | def _run_log_monitoring( |
| 191 | svc, project, feature_service_name, start_date, end_date, granularity, auto_mode |
| 192 | ): |
| 193 | if auto_mode: |
| 194 | click.echo("Auto-computing log metrics for all granularities...") |
| 195 | result = svc.auto_compute_log_metrics( |
| 196 | project=project, |
| 197 | feature_service_name=feature_service_name, |
| 198 | ) |
| 199 | click.echo(f"Status: {result['status']}") |
| 200 | click.echo(f"Feature services computed: {result['computed_feature_services']}") |
| 201 | click.echo(f"Features computed: {result['computed_features']}") |
| 202 | click.echo(f"Granularities: {', '.join(result['granularities'])}") |
| 203 | click.echo(f"Duration: {result['duration_ms']}ms") |
| 204 | else: |
| 205 | if not feature_service_name: |
| 206 | click.echo( |
| 207 | "Error: --feature-service is required for log source with explicit dates." |
| 208 | ) |
| 209 | return |
| 210 | |
| 211 | start_d = date.fromisoformat(start_date) if start_date else None |
| 212 | end_d = date.fromisoformat(end_date) if end_date else None |
| 213 | |
| 214 | result = svc.compute_log_metrics( |
| 215 | project=project, |
| 216 | feature_service_name=feature_service_name, |
| 217 | start_date=start_d, |
| 218 | end_date=end_d, |
| 219 | granularity=granularity or "daily", |
| 220 | ) |
| 221 | |
| 222 | click.echo(f"Status: {result['status']}") |
| 223 | click.echo("Source: log") |
| 224 | click.echo(f"Features computed: {result.get('computed_features', 0)}") |
| 225 | click.echo(f"Duration: {result['duration_ms']}ms") |
no test coverage detected