Files
zeekay bc4ddf332b chore: rebase the tree onto upstream master fa1a9a60
Mechanically re-derived: bin/debrand runs over a fresh import of
posthog/posthog@fa1a9a60d4 (2026-08-06).
The pipeline (.hanzo/workflows), the Dockerfiles and bin/docker*
entrypoints, compose files, LLM.md and the squashed initial migration
are restored from the shipped tree, same as the previous import.

The prune's import-closure guard kept 21 products the new core now
imports; dropping them is a refactor now, recorded rather than forced.
2026-08-06 01:25:36 -07:00

104 lines
4.3 KiB
TypeScript

import { combineUrl } from 'kea-router'
import { urls } from 'scenes/urls'
import { FileSystemIconType, ProductItemCategory, ProductKey } from '~/queries/schema/schema-general'
import { ActivityScope, FileSystemIconColor, ProductManifest } from '../../frontend/src/types'
export const manifest: ProductManifest = {
name: 'Logs',
scenes: {
Logs: {
import: () => import('./frontend/LogsScene'),
projectBased: true,
name: 'Logs',
activityScope: ActivityScope.LOG,
layout: 'app-container',
iconType: 'logs',
description: 'Monitor and analyze your logs to understand and fix issues.',
},
LogsAlertDetail: {
import: () => import('./frontend/scenes/LogsAlertDetailScene/LogsAlertDetailScene'),
projectBased: true,
name: 'Alert',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
LogsAlertNotificationDetail: {
import: () => import('./frontend/scenes/LogsAlertNotificationDetailScene/LogsAlertNotificationDetailScene'),
projectBased: true,
name: 'Destination',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
LogsSamplingNew: {
import: () => import('./frontend/scenes/LogsSamplingNewScene/LogsSamplingNewScene'),
projectBased: true,
name: 'New drop rule',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
LogsSamplingDetail: {
import: () => import('./frontend/scenes/LogsSamplingDetailScene/LogsSamplingDetailScene'),
projectBased: true,
name: 'Drop rule',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
LogsRetentionNew: {
import: () => import('./frontend/scenes/LogsRetentionNewScene/LogsRetentionNewScene'),
projectBased: true,
name: 'New retention rule',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
LogsRetentionDetail: {
import: () => import('./frontend/scenes/LogsRetentionDetailScene/LogsRetentionDetailScene'),
projectBased: true,
name: 'Retention rule',
activityScope: ActivityScope.LOG,
layout: 'app-container',
},
},
routes: {
'/logs': ['Logs', 'logs'],
'/logs/alerts/:id': ['LogsAlertDetail', 'logsAlertDetail'],
'/logs/alerts/:id/notifications/:insightsFunctionId': ['LogsAlertNotificationDetail', 'logsAlertNotificationDetail'],
'/logs/drop-rules/new': ['LogsSamplingNew', 'logsSamplingNew'],
'/logs/drop-rules/:id': ['LogsSamplingDetail', 'logsSamplingDetail'],
'/logs/retention-rules/new': ['LogsRetentionNew', 'logsRetentionNew'],
'/logs/retention-rules/:id': ['LogsRetentionDetail', 'logsRetentionDetail'],
},
redirects: {
'/logs/sampling/new': (_params, searchParams, hashParams) =>
combineUrl('/logs/drop-rules/new', searchParams, hashParams).url,
'/logs/sampling/:id': (params, searchParams, hashParams) =>
combineUrl(`/logs/drop-rules/${params.id}`, searchParams, hashParams).url,
},
urls: {
logs: (): string => '/logs',
logsAlertDetail: (id: string, tab?: string): string =>
tab ? `/logs/alerts/${id}?tab=${tab}` : `/logs/alerts/${id}`,
logsAlertNotificationDetail: (alertId: string, insightsFunctionId: string): string =>
`/logs/alerts/${alertId}/notifications/${insightsFunctionId}`,
logsSamplingNew: (): string => '/logs/drop-rules/new',
logsSamplingDetail: (id: string): string => `/logs/drop-rules/${id}`,
logsRetentionNew: (): string => '/logs/retention-rules/new',
logsRetentionDetail: (id: string): string => `/logs/retention-rules/${id}`,
},
fileSystemTypes: {},
treeItemsNew: [],
treeItemsProducts: [
{
path: 'Logs',
intents: [ProductKey.LOGS],
category: ProductItemCategory.APP_MONITORING,
iconType: 'logs' as FileSystemIconType,
iconColor: ['var(--color-product-logs-light)'] as FileSystemIconColor,
href: urls.logs(),
sceneKey: 'Logs',
},
],
}