Skip to content

Commit

Permalink
Add Description for Data Insights and report app (#13714)
Browse files Browse the repository at this point in the history
* Add Description for Data Insights and report app

* Add Default Empty value for after in logs

* fix: description changes

* fix: restrict to day schedule for external apps

---------

Co-authored-by: karanh37 <karanh37@gmail.com>
  • Loading branch information
mohityadav766 and karanh37 authored Oct 26, 2023
1 parent 857bea4 commit 17f36d1
Show file tree
Hide file tree
Showing 9 changed files with 20 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ public Response getLastLogs(
@Parameter(description = "Name of the App", schema = @Schema(type = "string")) @PathParam("name") String name,
@Parameter(description = "Returns log chunk after this cursor", schema = @Schema(type = "string"))
@QueryParam("after")
@DefaultValue("")
String after) {
App installation = repository.getByName(uriInfo, name, repository.getFields("id,pipelines"));
if (installation.getAppType().equals(AppType.Internal)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "DataInsightsApplication",
"fullyQualifiedName": "DataInsightsApplication",
"displayName": "Data Insights",
"description": "OpenMetadata Data Insights Application runs a Data Insights Pipeline on the Ingestion Framework.",
"description": "**Data Insights: A Revolutionary Tool for Metadata Analysis and Data Management**\n\n**Comprehensive Data Analytics:** Dive deep into the world of data with our advanced analytics, crafted to transform raw metadata into valuable insights. The application meticulously processes collected metadata, ensuring every bit of information is utilized to its full potential.\n**Growth Trend Identification:** Stay ahead of the curve by tracking the expansion of your data assets over time. Our application provides a visual and quantitative analysis of your data’s growth rate, helping you make informed decisions for resource allocation and future planning.\n**Detailed Asset Descriptions and Ownership:** Gain clarity on your data landscape with extensive descriptions and clear ownership details for each data asset. Our tool not only lists the data assets but also enriches them with metadata, ensuring that you have a comprehensive understanding of what each dataset entails and who is responsible for it.\n**OpenMetadata Integration:** Experience seamless integration with OpenMetadata, one of the leading metadata platforms. Our application taps into the power of OpenMetadata to fetch, analyze, and visualize usage patterns, ensuring that you are leveraging OpenMetadata to its full potential.\n**User Interaction Tracking:** Discover which data assets are capturing the attention of your users. Our tool keeps track of user interactions, pinpointing the most viewed and utilized data assets. This feature is invaluable for identifying popular datasets, helping you to understand user preferences and trends.\n**Actionable Insights for Data Governance:** Beyond analytics, our application serves as a tool for robust data governance. By providing insights into data asset utilization, ownership, and growth, it empowers organizations to enforce better data management practices, ensuring data quality and integrity.\nUser-Friendly Interface: Navigate through a wealth of data with ease, thanks to our intuitive and user-friendly interface. Even if you are not a data expert, our application provides a straightforward experience, making data analytics accessible to everyone.\n**Real-Time Analytics:** Stay up-to-date with real-time analytics and insights. Our application ensures that you are always in the loop, providing timely and accurate data to support your decision-making processes.\n**Customizable Reports:** Tailor the analytics to suit your needs. With customizable reports, you can focus on the metrics that matter the most to your organization, ensuring that the insights you receive are relevant and actionable.\nSecure and Reliable: Trust in the reliability and security of our application. We prioritize the safety of your data, implementing robust security measures to protect your metadata and insights.\nData Insights stands out as a pivotal tool for organizations aiming to optimize their data management practices, ensuring that every piece of data is a stepping stone towards informed decisions and enhanced data governance.",
"features": "Run Ingestion Framework Data Insight Module.",
"appType": "external",
"appScreenshots": ["DataInsightsPic1.png"],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "DataInsightsReportApplication",
"fullyQualifiedName": "DataInsightsReportApplication",
"displayName": "Data Insights Report",
"description": "OpenMetadata Data Insights Report Application sends a data insight report.",
"description": "**Data Insights Reports: Enhancing Data Management through OpenMetadata**\n\n**Integration with OpenMetadata:** Data Insights Reports is designed to work seamlessly with OpenMetadata, providing organizations with the tools they need to set and track Key Performance Indicators (KPIs) such as Ownership and Description Coverage. These KPIs help establish clear goals for data management across the organization.\n\n**Focus on Ownership and Description Coverage:**\n **Ownership:** Knowing who is responsible for each data asset is crucial. By making Ownership a KPI, we help ensure that there is clear accountability for every piece of data, which in turn helps in its proper management.\n **Description Coverage:** It’s important for data to be easily understandable. Setting Description Coverage as a KPI ensures that all data assets are accompanied by clear descriptions, making them more accessible and useful to everyone in the organization.\n\n**Weekly Email Reminders to Stay on Track:**\n **Regular Updates:** Our weekly email reminders keep all teams in the loop, helping them stay aware of their progress in achieving the organization’s KPIs.\nVisual Progress Tracking: The emails include visual representations of progress, making it easy for teams to quickly understand where they stand in relation to the set goals.\n **Guidance for Action:** The updates are not just about tracking progress; they also provide insights and suggestions on what can be done to improve, ensuring that teams have the guidance they need to meet their goals.\n\n**Supporting Teams and Advancing Organizational Goals:**\n **Building a Data-Driven Culture:** By integrating KPI tracking into regular workflows, Data Insights Reports helps cultivate a culture that values and leverages data for better decision-making.\n **Tailored to Each Team:** While Ownership and Description Coverage are universal goals, our tool recognizes that each team is different. The weekly reports are customized to suit the specific needs and characteristics of each team, ensuring that the insights provided are always relevant.\nIn summary, Data Insights Reports provides a practical and effective solution for organizations looking to enhance their data management practices. Through integration with OpenMetadata, regular updates, and a focus on key data management goals, it supports teams in their efforts to maintain clear ownership and comprehensive descriptions of their data assets.",
"features": "Data Insights Application. Send Email Reports.",
"appType": "internal",
"appScreenshots": ["DataInsightsReportPic1.png"],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ export interface TestSuiteSchedulerProps {
okText: string;
cancelText: string;
};
includePeriodOptions?: string[];
}

export interface RightPanelProps {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ const TestSuiteScheduler: React.FC<TestSuiteSchedulerProps> = ({
onCancel,
onSubmit,
isQuartzCron = false,
includePeriodOptions,
}) => {
const [repeatFrequency, setRepeatFrequency] = useState<string | undefined>(
initialData
Expand All @@ -38,6 +39,7 @@ const TestSuiteScheduler: React.FC<TestSuiteSchedulerProps> = ({
<Row gutter={[16, 32]}>
<Col span={24}>
<CronEditor
includePeriodOptions={includePeriodOptions}
isQuartzCron={isQuartzCron}
value={repeatFrequency}
onChange={(value: string) => setRepeatFrequency(value)}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,10 @@ const AppRunsHistory = forwardRef(
);

const showLogAction = useCallback((record: AppRunRecordWithId): boolean => {
if (appData?.appType === AppType.External) {
return false;
}

if (record.status === Status.Success && isNull(record?.successContext)) {
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,9 @@ const AppSchedule = ({
cancelText: t('label.cancel'),
okText: t('label.save'),
}}
includePeriodOptions={
appData.appType === AppType.External ? ['Day'] : undefined
}
initialData={getIngestionFrequency(PipelineType.Application)}
onCancel={onDialogCancel}
onSubmit={onDialogSave}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ const MarketPlaceAppDetails = () => {
pageTitle={t('label.application-plural')}>
<Row>
<Col span={24}>
<Typography.Title className="p-md m-0" level={2}>
<Typography.Title className="p-md m-0 p-t-xss" level={2}>
{getEntityName(appData)}
</Typography.Title>
</Col>
Expand All @@ -202,7 +202,10 @@ const MarketPlaceAppDetails = () => {

<Col span={24}>
<div className="p-md">
<RichTextEditorPreviewer markdown={appData?.description ?? ''} />
<RichTextEditorPreviewer
enableSeeMoreVariant={false}
markdown={appData?.description ?? ''}
/>
</div>
</Col>
</Row>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,7 @@ const AppInstall = () => {
<Typography.Title level={5}>{t('label.schedule')}</Typography.Title>
<TestSuiteScheduler
isQuartzCron
includePeriodOptions={isExternalApp ? ['Day'] : undefined}
initialData={getIngestionFrequency(PipelineType.Application)}
onCancel={() => setActiveServiceStep(isExternalApp ? 1 : 2)}
onSubmit={onSubmit}
Expand All @@ -182,7 +183,7 @@ const AppInstall = () => {
default:
return <></>;
}
}, [activeServiceStep, appData, jsonSchema]);
}, [activeServiceStep, appData, jsonSchema, isExternalApp]);

useEffect(() => {
fetchAppDetails();
Expand Down

0 comments on commit 17f36d1

Please sign in to comment.