diff --git a/src/components/ColumnMenu/ColumnMenu.tsx b/src/components/ColumnMenu/ColumnMenu.tsx
index 99b168aa..7dff465e 100644
--- a/src/components/ColumnMenu/ColumnMenu.tsx
+++ b/src/components/ColumnMenu/ColumnMenu.tsx
@@ -318,7 +318,15 @@ export default function ColumnMenu({
},
disabled: !isConfigurable,
},
- {
+ ];
+
+ if (
+ column?.config?.defaultValue?.type === "dynamic" ||
+ [FieldType.action, FieldType.derivative, FieldType.connector].includes(
+ column.type
+ )
+ ) {
+ configActions.push({
key: "logs",
label: altPress ? "Logs" : "Logsā¦",
icon: ,
@@ -330,8 +338,8 @@ export default function ColumnMenu({
column: [column.key],
});
},
- },
- ];
+ });
+ }
// TODO: Generalize
const handleEvaluateAll = async () => {
diff --git a/src/components/TableModals/CloudLogsModal/CloudLogsModal.tsx b/src/components/TableModals/CloudLogsModal/CloudLogsModal.tsx
index 93c2a8af..2b835e3a 100644
--- a/src/components/TableModals/CloudLogsModal/CloudLogsModal.tsx
+++ b/src/components/TableModals/CloudLogsModal/CloudLogsModal.tsx
@@ -43,6 +43,7 @@ import {
cloudLogFiltersAtom,
} from "@src/atoms/tableScope";
import { cloudLogFetcher } from "./utils";
+import { FieldType } from "@src/constants/fields";
export default function CloudLogsModal({ onClose }: ITableModalProps) {
const [projectId] = useAtom(projectIdAtom, projectScope);
@@ -312,13 +313,21 @@ export default function CloudLogsModal({ onClose }: ITableModalProps) {
({
+ options={Object.entries(tableSchema.columns ?? {})
+ .filter(
+ ([key, config]) =>
+ config?.config?.defaultValue?.type === "dynamic" ||
+ [
+ FieldType.action,
+ FieldType.derivative,
+ FieldType.connector,
+ ].includes(config.type)
+ )
+ .map(([key, config]) => ({
label: config.name,
value: key,
type: config.type,
- })
- )}
+ }))}
value={cloudLogFilters.column ?? []}
onChange={(v) =>
setCloudLogFilters((prev) => ({ ...prev, column: v }))