diff --git a/mysql/oci-oraca-mysql/a-introduction/images/Observability&Management.png b/mysql/oci-oraca-mysql/a-introduction/images/Observability&Management.png
new file mode 100644
index 00000000..ddbe3a11
Binary files /dev/null and b/mysql/oci-oraca-mysql/a-introduction/images/Observability&Management.png differ
diff --git a/mysql/oci-oraca-mysql/a-introduction/introduction.md b/mysql/oci-oraca-mysql/a-introduction/introduction.md
new file mode 100644
index 00000000..c929aa73
--- /dev/null
+++ b/mysql/oci-oraca-mysql/a-introduction/introduction.md
@@ -0,0 +1,68 @@
+# Introduction
+
+## About this Workshop
+
+This workshop guides you through the process of provisioning a MySQL HeatWave database on OCI, enhancing a Spring Boot application with Oracle AI code assistant, incorporating OpenTelemetry instrumentation, and deploying the application on an Oracle Kubernetes cluster. You will learn how to monitor the application using the Oracle Application Performance Management Service, leveraging OpenTelemetry traces and metrics for comprehensive end-to-end monitoring and diagnostics. Additionally, the workshop covers the utilization of Oracle Cloud Infrastructure (OCI) Database Management to monitor the MySQL HeatWave database and Logging Analytics for Kubernetes and application logs.
+
+
+Estimated Time: 120 minutes
+
+### About Oracle AI Code Assistant
+
+Oracle AI code assist utilizes machine learning models to provide real-time suggestions and autocompletions while writing code. Oracle AI code assist analyzes the context and structure of the code being written, offering relevant snippets and completing code patterns. Available as IntelliJ IDEA plugin to enhance the productivity by reducing manual typing and helping developers discover and apply appropriate code constructs.
+
+### MySQL Heatwave Database
+
+MySQL Heatwave is a fully-managed database service, powered by the integrated HeatWave in-memory query accelerator. It is the only cloud-native database service that combines transactions, analytics, and machine learning services into MySQL Heatwave, delivering real-time, secure analytics without the complexity, latency, and cost of ETL duplication.
+
+### Observability and Management Services
+
+Monitor, analyze, and manage multicloud applications and infrastructure environments with full-stack visibility, prebuilt analytics, and automation using Oracle Cloud Observability and Management Platform.
+
+![OCI Observability and Management](images/Observability&Management.png " ")
+
+### Database Management
+
+Database management provides unified console for on-premises and cloud databases with lifecycle database management capabilities for monitoring, performance management, tuning, and administration. With Performance Hub, developers can improve SQL code during active development as well as continuously monitor and tune queries running on production systems. For more information on MySQL HeatWave Database Management > **[Use Database Management for MySQL HeatWave](https://blogs.oracle.com/mysql/post/database-management-for-mysql-heatwave)**
+
+
+### Application Performance Management
+
+Among other capabilities, OCI APM includes an implementation of a Distributed Tracing system. It collects and processes transaction trace data (spans) from the monitored application and makes it available for viewing, dashboarding, exploration, alerts, etc. For more information on APM and Trace Explorer please refer to Application Performance Monitoring > **[Use Trace Explorer](https://docs.oracle.com/en-us/iaas/application-performance-monitoring/doc/use-trace-explorer.html)** section in the OCI Documentation.
+
+### Logging Analytics
+
+Cloud Infrastructure (OCI) Logging Analytics lets you index, enrich, aggregate, explore, search, analyze, correlate, visualize and monitor all log data from your applications and system infrastructure on cloud or on-premises. Oracle Logging Analytics provides a one-click end-to-end Kubernetes monitoring solution for the underlying infrastructure, Kubernetes platform and cloud native applications.For more information on APM and Trace Explorer please refer to Application Performance Monitoring > **[Use Logging Analytics to monitor Kubernetes](https://docs.oracle.com/en/solutions/kubernetes-oke-logging-analytics/index.html)**.
+
+
+### Objectives
+
+In this workshop, you will:
+* Create an APM domain, obtain Data Upload Endpoint and Data Keys
+* Create Oracle Kubernetes cluster
+* Create MySQL HeatWave Database
+* Use Oracle AI Code Assist to build microservice application
+* Instrument APM Browser agent and Open telemetry auto instrumentation of server code
+* Use APM Trace Explorer to view traces, spans, and span dimensions
+* Use Database Management to review query performances
+* Use Logging analytics to analyze Kubernetes logs
+
+### Prerequisites
+
+* An Oracle Free Tier with a 30-day free trial or Paid Cloud Account - Please view this workshop's LiveLabs landing page to see which environments are supported.
+
+
+>**Note:** If you have a **Free Trial** account when your Free Trial expires, your account will be converted to an **Always Free** account. You will not be able to conduct Free Tier workshops unless the Always Free environment is available.
+**[Click here for the Free Tier FAQ page.](https://www.oracle.com/cloud/free/faq.html)**
+
+If you are running the workshop in a Paid Cloud Account, ensure you have the permissions below:
+* Oracle Cloud Account Administrator role or manage apm-domains permission in the target compartment. See **[Perform Oracle Cloud Infrastructure Prerequisites (APM)](https://docs.oracle.com/en-us/iaas/application-performance-monitoring/doc/perform-oracle-cloud-infrastructure-prerequisite-tasks.html)** in the Oracle Cloud documentation.
+
+
+### Acknowledgements
+
+* **Author** - Anand Prabhu, Principal Member of Technical Staff, Enterprise and Cloud Manageability
+- **Contributors** -
+Yutaka Takatsu, Senior Principal Product Manager,
+Avi Huber, Vice President, Product Management
+* **Last Updated By/Date** - Anand Prabhu, January 2024
\ No newline at end of file
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/environmentsetup.md b/mysql/oci-oraca-mysql/b-lab-one-envsetup/environmentsetup.md
new file mode 100644
index 00000000..abe7d5ee
--- /dev/null
+++ b/mysql/oci-oraca-mysql/b-lab-one-envsetup/environmentsetup.md
@@ -0,0 +1,102 @@
+# Create a Kubernetes cluster
+
+## Introduction
+
+This workshop uses Spring Boot-based Java microservices as a target application connecting to MySQL HeatWave Database and monitor the application end to end using OCI Observability and Management Services. In this lab, first, you will use the Oracle Cloud console to set up an OCI compartment, second, create an Oracle container engine for Kubernetes (OKE) cluster in your tenancy and a MySQL HeatWave Database enabling Database management during creation.
+
+Estimated time: 45 minutes
+
+### Objectives
+
+* Create a compartment
+* Create a Kubernetes cluster
+* Create a MySQL HeatWave Database
+
+### Prerequisites
+
+* This lab requires an [Oracle Cloud account](https://www.oracle.com/cloud/free/). You may use your cloud account, or a Free tier account, a cloud account that you obtained through a trial.
+
+
+## Task 1: Create an OCI compartment
+
+1. Open the navigation menu from the top-left corner (aka. hamburger menu) of the Oracle Cloud console and select **Identity & Security** > **Compartments**.
+ ![Oracle Cloud console Menu](images/1-1-compartments.png " ")
+2. Click **Create Compartment**
+ ![Oracle Cloud console, Create Compartment](images/1-2-compartments.png " ")
+3. Enter the following parameters:
+* Compartment name: **appdev**
+* Description: **App Dev compartment**
+* Accept the default values for the other fields, and click, **Create Compartment**
+ ![Oracle Cloud console, Create Compartment](images/1-3-compartments.png " ")
+* Verify that your appdev compartment is created in the table
+ ![Oracle Cloud console, Create Compartment](images/1-4-compartments.png " ")
+
+## Task 2: Create an OKE
+
+1. Open the navigation menu from the top left corner (aka. hamburger menu) in the Oracle Cloud console, and select **Developer Services** > **Kubernetes Clusters (OKE)**.
+
+ ![Oracle Cloud console, Navigation Menu](images/2-1-OKE.png " ")
+
+2. Make sure the **appdev** is selected in the Compartment field, then click **Create cluster**
+
+ ![Oracle Cloud console, Clusters in Compartment](images/2-2-OKE.png " ")
+
+3. Quick Create pane is pre-selected. Keep the default selection and click **Submit**.
+
+ ![Oracle Cloud console, Create cluster](images/2-3-OKE.png " ")
+
+4. Name the cluster as **k8-appdev**. Select Kubernetes API endpoint as **Public endpoint** and Node type as **Managed** and keep other fields as default and click **Next**.
+
+ ![Oracle Cloud console, Create cluster](images/2-4-OKE.png " ")
+ ![Oracle Cloud console, Create cluster](images/2-5-OKE.png " ")
+ ![Oracle Cloud console, Create cluster](images/2-6-OKE.png " ")
+
+5. Review the configuration, and click **Create cluster**.
+
+ ![Oracle Cloud console, Create cluster](images/2-7-OKE.png " ")
+
+6. Make sure all verification steps are cleared. Click **Close**.
+
+ ![Oracle Cloud console, Create cluster](images/2-8-OKE.png " ")
+
+7. This will start to create a cluster, and takes 7 to 10 minutes to complete. While waiting for the creation of the cluster, you can proceed to the next lab to create an APM domain. In Lab 5, we will resume the steps to build the application.
+
+ ![Oracle Cloud console, Create cluster](images/2-9-OKE.png " ")
+
+
+## Task 3: Create a MySQL HeatWave Database
+
+1. From the OCI menu, select **Databases**, then **MySQL HeatWave > DB Systems**.
+ ![Oracle Cloud console Menu](images/1-1-mysqlheatwave.png " ")
+
+2. Select the **appdev** compartment from the pulldown menu and Click **Create DB System**
+ ![Oracle Cloud console, DB Systems](images/1-2-mysqlheatwave.png " ")
+
+3. Choose **Production** and select the **appdev** compartment and provide name **mysql-appdev** for the MySQL HeatWave Database
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-3-mysqlheatwave.png " ")
+
+4. Choose **Standalone**, enable **MySQL HeatWave** and provide MySQL HeatWave Database administration credentials.
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-4-mysqlheatwave.png " ")
+
+5. Choose the VCN and private subnet of Oracle Kubernetes Cluster **k8-appdev** to allow access to MySQL HeatWave database from Kubernetes nodes and keep hardware settings default.
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-5-mysqlheatwave.png " ")
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-6-mysqlheatwave.png " ")
+
+6. Uncheck **Enable automatic backups** and in advanced settings under **Deletion Plan** Tab uncheck **Delete protected** and under **Management** Tab check **Database Management**
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-7-mysqlheatwave.png " ")
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-8-mysqlheatwave.png " ")
+
+7. This will start to create a MySQL HeatWave Database, and takes 10 to 12 minutes to complete. While waiting for the creation of the MySQL HeatWave Database, you can proceed to the next lab to create an virtual machine. In Lab 6, we will resume the steps to deploy the application connecting to the MySQL HeatWave Database.
+
+ ![Oracle Cloud console, Create MySQL HeatWave Database](images/1-9-mysqlheatwave.png " ")
+
+
+You may now **proceed to the next lab**.
+
+## Acknowledgements
+
+* **Author** - Anand Prabhu, Principal Member of Technical Staff, Enterprise and Cloud Manageability
+- **Contributors** -
+Yutaka Takatsu, Senior Principal Product Manager,
+Avi Huber, Vice President, Product Management
+* **Last Updated By/Date** - Anand Prabhu, January 2024
\ No newline at end of file
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-compartments.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-compartments.png
new file mode 100644
index 00000000..ffddc4b1
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-compartments.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-mysqlheatwave.png
new file mode 100644
index 00000000..eab876b4
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-1-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-compartments.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-compartments.png
new file mode 100644
index 00000000..8381caae
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-compartments.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-mysqlheatwave.png
new file mode 100644
index 00000000..e46a69fc
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-2-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-compartments.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-compartments.png
new file mode 100644
index 00000000..fe4695bd
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-compartments.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-mysqlheatwave.png
new file mode 100644
index 00000000..aa142406
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-3-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-compartments.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-compartments.png
new file mode 100644
index 00000000..074d13a9
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-compartments.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-mysqlheatwave.png
new file mode 100644
index 00000000..25aec2f7
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-4-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-5-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-5-mysqlheatwave.png
new file mode 100644
index 00000000..d3cef73c
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-5-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-6-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-6-mysqlheatwave.png
new file mode 100644
index 00000000..7f7d41ee
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-6-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-7-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-7-mysqlheatwave.png
new file mode 100644
index 00000000..bdde06b8
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-7-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-8-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-8-mysqlheatwave.png
new file mode 100644
index 00000000..628a55d5
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-8-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-9-mysqlheatwave.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-9-mysqlheatwave.png
new file mode 100644
index 00000000..1bab8e42
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/1-9-mysqlheatwave.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-1-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-1-OKE.png
new file mode 100644
index 00000000..18b8c7bb
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-1-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-2-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-2-OKE.png
new file mode 100644
index 00000000..9820d03b
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-2-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-3-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-3-OKE.png
new file mode 100644
index 00000000..e8b58f58
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-3-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-4-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-4-OKE.png
new file mode 100644
index 00000000..36b090ab
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-4-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-5-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-5-OKE.png
new file mode 100644
index 00000000..6f57233c
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-5-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-6-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-6-OKE.png
new file mode 100644
index 00000000..0142cdeb
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-6-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-7-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-7-OKE.png
new file mode 100644
index 00000000..aa004882
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-7-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-8-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-8-OKE.png
new file mode 100644
index 00000000..f6d4e5d3
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-8-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-9-OKE.png b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-9-OKE.png
new file mode 100644
index 00000000..a8c13856
Binary files /dev/null and b/mysql/oci-oraca-mysql/b-lab-one-envsetup/images/2-9-OKE.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/deploy-app.md b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/deploy-app.md
new file mode 100644
index 00000000..18202d9a
--- /dev/null
+++ b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/deploy-app.md
@@ -0,0 +1,192 @@
+# Deploy a microservices application
+
+## Introduction
+
+This workshop uses Spring Boot-based Java microservices as a target application and in this lab, you will deploy the application to the Kubernetes cluster created in Lab 1.
+
+Estimated time: 15 minutes
+
+### Objectives
+
+* Deploy a microservices application to Kubernetes cluster
+
+### Prerequisites
+
+* Completion of the preceding labs in this workshop
+
+## Task 1: Verify OKE
+
+1. Go back to the Kubernetes cluster page where you left Lab 1, and check the status of the cluster. Open the navigation menu from the top left corner (aka. hamburger menu) in the Oracle Cloud console, and select **Developer Services** > **Kubernetes Clusters (OKE)**.
+
+ ![Oracle Cloud console, Cluster details](images/6-1-1-buildapp.png " ")
+
+2. Click the **k8-appdev** link from the table.
+
+ ![Oracle Cloud console, Navigation Menu](images/6-1-2-buildapp.png " ")
+
+3. If the status of the cluster is **Active**, creation was successful. If it is still in a **Creating** status, it may take a few more minutes to complete. (Usually, it takes 7 to 10 minutes to finish the jobs to create a cluster).
+
+ ![Oracle Cloud console, Cluster details](images/6-1-3-buildapp.png " ")
+
+## Task 2: Access the OKE in the Oracle Cloud shell
+
+
+1. Click **Access Cluster** on the cluster details page.
+
+ ![Oracle Cloud console, Cluster details](images/6-1-3-buildapp.png " ")
+
+2. Make sure the **Cloud Shell Access** is selected. Click the **Copy** link from the command to access kubeconfig for the cluster.
+
+ ![Oracle Cloud console, Cluster details](images/6-1-4-buildapp.png " ")
+
+3. Then click **Launch Cloud Shell**.
+
+ ![Oracle Cloud console, Cluster details](images/6-1-5-buildapp.png " ")
+
+4. Oracle Cloud Shell window opens at the lower side of the browser screen and paste the copied command to the command shell prompt. Then hit enter.
+
+ ![Oracle Cloud console, Cluster details](images/6-1-6-buildapp.png " ")
+
+ >**Note:** Save the command to a text file on your laptop, and execute it whenever you start a new Cloud Shell session while working in the labs in this workshop.
+
+
+## Task 3: Prepare Database for the application
+
+1. Install MySQL client to connect to the MySQL HeatWave Database from cloud shell
+ ```
+
+ kubectl run mysql-client --image=iad.ocir.io/axfo51x8x2ap/load-mysql-data:latest -it --rm --restart=Never -- /bin/bash
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-2-1-buildapp.png)
+
+2. Execute below command to connect to MySQL HeatWave Database using Private IP of the database and admin credentials provided during database creation.
+ ```
+
+ mysql -h -u -p
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-2-2-buildapp.png)
+
+3. Execute below command to create a "WINE" application database and tables required for the application
+ ```
+
+ source insert_100_mysql.sql
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-2-3-buildapp.png)
+
+4. Execute **exit** to exit from the mysql client and execute **exit** again to exit from mysql pod to kubectl session.
+
+ ![Oracle Cloud console, Cloud Shell](images/6-2-4-buildapp.png)
+
+ >**Note:** Now the database is prepared with necessary tables and records. Please proceed to the next task.
+
+## Task 4: Download configuration files
+
+1. Download the zip file to the home directory in the Cloud Shell.
+
+ ``` bash
+
+ cd ~; wget https://objectstorage.us-ashburn-1.oraclecloud.com/p/nzVKfbkHfZ5xMIyz9xRJDbKz6awoBwha88WKF35mtyFsT5T52pO5UXzkZ_iHHIuJ/n/axfo51x8x2ap/b/DevLive-MySQL/o/sb-hol.zip
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-3-1-buildapp.png " ")
+
+3. Unzip the file. This will create a directory **sb-hol**.
+
+ ``` bash
+
+ unzip ~/sb-hol.zip
+
+ ```
+
+ ![Oracle Cloud console, Cloud Shell](images/6-3-2-buildapp.png " ")
+
+## Task 5: Deploy the application
+
+1. Execute the following command from the Cloud Shell.
+
+ ``` bash
+
+ cd ~/sb-hol;ls
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-4-1-buildapp.png " ")
+
+ >**Note:** Verify there are the following files in the folder.
+ - admessage.yaml
+ - apmnamespace.yaml
+ - customapmresource.yaml
+ - wstore.yaml
+
+2. Modify the file **wstore.yaml** to update the MySQL HeatWave Database Private IP
+
+ ``` bash
+
+ vi wstore.yaml
+
+ ```
+ - Update field **** with MySQL HeatWave Database Private IP (line 88)
+
+ ![Oracle Cloud console, Cloud Shell](images/6-4-3-buildapp.png " ")
+
+ - Press the Esc key to ensure you are in command mode.
+ - Type :wq (colon followed by wq) in the vi editor.
+ - Press Enter to execute the command to save the file
+
+ ![Oracle Cloud console, Cloud Shell](images/6-4-4-buildapp.png " ")
+
+3. Execute the command below to deploy the application to the cluster.
+
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/wstore.yaml --validate=false
+
+ ```
+
+## Task 6: Launch the application
+1. Verify the 2 services and 2 stateful sets are created
+ ![Oracle Cloud console, Cloud Shell](images/6-4-5-buildapp.png " ")
+
+2. Run the kubectl command below to display the status of the pod creation. Wait until the statuses become 'Running'. This may take a few minutes.
+
+ ``` bash
+
+ kubectl get pods
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/6-4-6-buildapp.png " ")
+
+3. Run the kubectl command below to display the deployed services.
+
+ ``` bash
+
+ kubectl get svc
+
+ ```
+
+4. Copy the External IP of the wstore-frontend service
+ ![Oracle Cloud console, Cloud Shell](images/6-4-7-buildapp.png " ")
+
+5. Refer to the below example and construct a URL, and paste it into a browser's address bar. If you see the WineCellar content as in the below screenshot, the deployment was successful.
+
+ ``` bash
+
+ http:///winestore/
+
+ ```
+ ![WineCellar Demo app](images/6-4-8-buildapp.png " ")
+
+ >**Note:** It may take a few minutes to complete the deployment and start loading the page content on the screen for the first time.
+
+
+You may now **proceed to the next lab**.
+
+## Acknowledgements
+
+* **Author** - Anand Prabhu, Principal Member of Technical Staff, Enterprise and Cloud Manageability
+- **Contributors** -
+Yutaka Takatsu, Senior Principal Product Manager,
+Avi Huber, Vice President, Product Management
+* **Last Updated By/Date** - Anand Prabhu, January 2024
\ No newline at end of file
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-1-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-1-buildapp.png
new file mode 100644
index 00000000..48f14a9f
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-1-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-2-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-2-buildapp.png
new file mode 100644
index 00000000..9f2c49f3
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-2-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-3-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-3-buildapp.png
new file mode 100644
index 00000000..d0593875
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-3-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-4-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-4-buildapp.png
new file mode 100644
index 00000000..9e55199a
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-4-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-5-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-5-buildapp.png
new file mode 100644
index 00000000..b6f1879f
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-5-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-6-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-6-buildapp.png
new file mode 100644
index 00000000..b7f43a13
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-1-6-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-0-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-0-buildapp.png
new file mode 100644
index 00000000..ee15381f
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-0-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-1-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-1-buildapp.png
new file mode 100644
index 00000000..41aa7a70
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-1-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-2-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-2-buildapp.png
new file mode 100644
index 00000000..1479e3b5
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-2-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-3-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-3-buildapp.png
new file mode 100644
index 00000000..b287e20f
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-3-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-4-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-4-buildapp.png
new file mode 100644
index 00000000..3e1bff7d
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-2-4-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-1-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-1-buildapp.png
new file mode 100644
index 00000000..56da1ad1
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-1-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-2-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-2-buildapp.png
new file mode 100644
index 00000000..20a02754
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-3-2-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-1-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-1-buildapp.png
new file mode 100644
index 00000000..a9c049bc
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-1-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-2-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-2-buildapp.png
new file mode 100644
index 00000000..ee2605f3
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-2-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-3-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-3-buildapp.png
new file mode 100644
index 00000000..9f35b87d
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-3-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-4-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-4-buildapp.png
new file mode 100644
index 00000000..d5388500
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-4-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-5-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-5-buildapp.png
new file mode 100644
index 00000000..6ee9173c
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-5-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-6-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-6-buildapp.png
new file mode 100644
index 00000000..7e9df70a
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-6-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-7-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-7-buildapp.png
new file mode 100644
index 00000000..e75f25b5
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-7-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-8-buildapp.png b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-8-buildapp.png
new file mode 100644
index 00000000..1631004d
Binary files /dev/null and b/mysql/oci-oraca-mysql/c-lab-two-deploy-app/images/6-4-8-buildapp.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-1-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-1-admessage.png
new file mode 100644
index 00000000..91d164d1
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-1-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-2-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-2-admessage.png
new file mode 100644
index 00000000..063d7da8
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-2-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-3-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-3-admessage.png
new file mode 100644
index 00000000..1e0564eb
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-3-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-4-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-4-admessage.png
new file mode 100644
index 00000000..a449eb9f
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-1-4-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-0-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-0-admessage.png
new file mode 100644
index 00000000..7be385f9
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-0-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-1-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-1-admessage.png
new file mode 100644
index 00000000..5058ebc0
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-1-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-10-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-10-admessage.png
new file mode 100644
index 00000000..1e2ff08a
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-10-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-11-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-11-admessage.png
new file mode 100644
index 00000000..b7bb2deb
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-11-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-2-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-2-admessage.png
new file mode 100644
index 00000000..f0bab0a5
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-2-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-3-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-3-admessage.png
new file mode 100644
index 00000000..e4f3640c
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-3-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-4-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-4-admessage.png
new file mode 100644
index 00000000..739070ab
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-4-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-5-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-5-admessage.png
new file mode 100644
index 00000000..8bb8e669
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-5-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-6-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-6-admessage.png
new file mode 100644
index 00000000..f851b5ad
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-6-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-7-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-7-admessage.png
new file mode 100644
index 00000000..ee2b7452
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-7-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-8-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-8-admessage.png
new file mode 100644
index 00000000..219f981c
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-8-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-9-admessage.png b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-9-admessage.png
new file mode 100644
index 00000000..3bbdf3dd
Binary files /dev/null and b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/images/3-2-9-admessage.png differ
diff --git a/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/oraca-codeassist.md b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/oraca-codeassist.md
new file mode 100644
index 00000000..ae2610b4
--- /dev/null
+++ b/mysql/oci-oraca-mysql/d-lab-three-extend&deploy-app-oraca/oraca-codeassist.md
@@ -0,0 +1,181 @@
+# Build a microservices application using Oracle AI Code Assist
+
+## Introduction
+
+This workshop helps to build a Spring Boot-based Java microservice using Oracle AI Code assist to enhance the ad messages on the Wine application.Currently we have static ad message **2023 Thanks Giving Promotion: Buy 1 get 1!!!!** shown in the application.In this lab, you will develop and deploy the new API to make ad messages dynamic by extending the wine application.
+
+Estimated time: 30 minutes
+
+
+
+
+
+## Alternatively : Deploy application built through Oracle AI Code Assist using published image
+
+## Task 1: Create table **admessage** in the MySQL HeatWave Database
+
+1. Install MySQL client to connect to the MySQL HeatWave Database from cloud shell
+ ```
+
+ kubectl run mysql-client --image=iad.ocir.io/axfo51x8x2ap/load-mysql-data:latest -it --rm --restart=Never -- /bin/bash
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-1-1-admessage.png)
+
+2. Execute below command to connect to MySQL HeatWave Database using Private IP of the database and admin credentials provided during database creation.
+ ```
+
+ mysql -h -u -p
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-1-2-admessage.png)
+
+3. Execute below command to connect to **wine** application database
+ ```
+
+ use wine;
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-1-3-admessage.png)
+
+4. Execute below sql statements to create a **admessage** table and insert a record into it
+
+ ``` bash
+
+ CREATE TABLE admessage (ID INT AUTO_INCREMENT PRIMARY KEY, message VARCHAR(255));
+ INSERT INTO admessage (ID, MESSAGE) VALUES (1,'Welcome to MySQL DevLive Event');
+ COMMIT;
+ SELECT * FROM admessage;
+
+
+ ```
+
+ ![Oracle Cloud console, Cloud Shell](images/3-1-4-admessage.png)
+
+## Task 2: Deploy Admessage application
+
+1. Go back to the cloud shell and inside **~/sb-hol** directory, find **admessage.yaml**
+
+ ![Oracle Cloud console, Cluster details](images/3-2-0-admessage.png " ")
+
+ Admessage.yaml contains reference to the containerized image with packaged Admessage application built through Oracle AI Code assist.
+
+2. Modify the file **admessage.yaml** to update the MySQL HeatWave Database Private IP
+
+ ``` bash
+
+ vi admessage.yaml
+
+ ```
+ - Update field **** with MySQL HeatWave Database Private IP (line 38)
+
+ ![Oracle Cloud console, Cloud Shell](images/3-2-1-admessage.png " ")
+
+ - Press the Esc key to ensure you are in command mode.
+ - Type :wq (colon followed by wq) in the vi editor.
+ - Press Enter to execute the command to save the file
+
+ ![Oracle Cloud console, Cloud Shell](images/3-2-2-admessage.png " ")
+
+3. Execute the command below to deploy the **AdMessage** application to the cluster.
+
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/admessage.yaml --validate=false
+
+ ```
+
+ Verify the 2 services and 2 stateful sets are created
+
+ ![Oracle Cloud console, Cluster details](images/3-2-3-admessage.png " ")
+
+3. Run the kubectl command below to display the status of the pod creation. Wait until the statuses become 'Running'. This may take a few minutes.
+
+ ``` bash
+
+ kubectl get pods
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-2-4-admessage.png " ")
+
+4. Run the kubectl command below to display the deployed services.
+
+ ``` bash
+
+ kubectl get svc
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-2-5-admessage.png " ")
+
+## Task 3: Integrate the Admessage API with the main wine application
+
+1. Modify the file **wstore.yaml** to update the endpoint of the **Admessage**
+
+ ``` bash
+
+ vi wstore.yaml
+
+ ```
+ - Update value of parameter **winStore.services.adservice** with **AdMessage Endpoint** mentioned below (line 59)
+
+ ``` bash
+
+ http://${ADMESSAGE_SERVICE_HOST}:${ADMESSAGE_SERVICE_PORT}/adapi/admessage/
+
+ ```
+
+ ![Oracle Cloud console, Cloud Shell](images/3-2-6-admessage.png " ")
+
+ - Press the Esc key to ensure you are in command mode.
+ - Type :wq (colon followed by wq) in the vi editor.
+ - Press Enter to execute the command to save the file
+
+ ![Oracle Cloud console, Cloud Shell](images/3-2-7-admessage.png " ")
+
+2. Execute the command below to deploy the application to the cluster.
+
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/wstore.yaml --validate=false
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-2-8-admessage.png " ")
+
+3. Run the kubectl command below to display the status of the pod creation. Wait until the statuses become 'Running'. This may take a few minutes.
+
+ ``` bash
+
+ kubectl get pods
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-2-9-admessage.png " ")
+
+4. Run the kubectl command below to display the deployed services.
+
+ ``` bash
+
+ kubectl get svc
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/3-2-10-admessage.png " ")
+
+4. Launch the application to see new **ad message**
+
+ ``` bash
+
+ http:///winestore/
+
+ ```
+
+ ![Oracle Cloud console, Cloud Shell](images/3-2-11-admessage.png " ")
+
+5. Additional task: Update table **admessage** to see how the admessage changes on update of table and refreshing the winestore url in the browser.
+
+ ``` bash
+
+ UPDATE admessage SET message="Oracle AI Code Assistant HOL" WHERE ID=1;
+ COMMIT;
+ SELECT * FROM admessage;
+
+
+ ```
\ No newline at end of file
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/enbale_om_services.md b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/enbale_om_services.md
new file mode 100644
index 00000000..e9098554
--- /dev/null
+++ b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/enbale_om_services.md
@@ -0,0 +1,315 @@
+# Enable application monitoring using Observability and Management Services
+
+## Introduction
+
+In this lab, you'll enable OCI Logging Analytics Service to monitor Oracle Kubernetes Engine and APM for application monitoring to get end to end visibility of the application.
+
+Estimated Time: 20 minutes
+
+### Objectives
+
+In this lab, you will see step-by-step instructions to:
+ - Enable APM & Logging Analytics Service
+ - Complete visibility into the application using O&M Services
+
+## Task 1: Create an APM domain
+
+1. From the OCI menu, select **Observability & Management**, then **Administration**.
+ ![Oracle Cloud console Menu](images/5-1-1-apmdomain.png " ")
+
+2. Select the **appdev** compartment from the dropdown and click Create APM domain
+ ![Oracle Cloud console Menu](images/5-1-2-apmdomain.png " ")
+
+4. Name your APM domain as **apm-appdev** and select **appdev** compartment from the dropdown. click **Create**.
+ ![Oracle Cloud console, Create APM Domain](images/5-1-3-apmdomain.png " ")
+
+5. Press the refresh button periodically to check the status. This may take a few minutes.
+ ![Oracle Cloud console, Create APM Domain](images/5-1-4-apmdomain.png " ")
+
+6. Once the job is completed, the status turns to Active with a green icon.
+ ![Oracle Cloud console, Create APM Domain](images/5-1-5-apmdomain.png " ")
+
+
+## Task 2: Obtain Data Upload Endpoint and Private and Public Data Keys
+
+To upload tracing data to an APM domain, Data Upload Endpoint and both Private and Public Data Keys must be configured in the application’s configuration files.
+
+1. Click the link to the APM domain.
+ ![Oracle Cloud console, APM Domain](images/5-1-5-apmdomain.png " ")
+
+
+
+2. In the **APM Domain Information** tab, find **Data Upload Endpoint**
+ - Under **Resources**, click **Data Keys**.
+ - find **auto\_generated\_private_data\_key**.
+ - find **auto\_generated\_public_data\_key**.
+
+ Copy data upload endpoint and data keys (private and public) to a file to be used in later tasks in the workshop.
+
+ ![Oracle Cloud console, APM Domain](images/5-1-6-apmdomain.png " ")
+
+
+## Task 3: Enable APM for the **Wine Cellar** application
+
+1. Enable APM browser agent by updating APM upload endpoint and public data key in the **wstore.yaml**
+
+ ``` bash
+
+ vi wstore.yaml
+
+ ```
+ - Update fields **** (line 55) and **** (line 57) with APM upload end point and data keys obtained from task 2.
+
+ ![Oracle Cloud console, Cloud Shell](images/4-3-1-appmon.png " ")
+
+ - Press the Esc key to ensure you are in command mode.
+ - Type :wq (colon followed by wq) in the vi editor.
+ - Press Enter to execute the command to save the file
+
+2. Enable APM using K8 Open telemetry operator at the namespace
+
+ - Update fields **** (line 11) and **** (line 13) with APM upload end point and data keys obtained from task 2.
+
+ ``` bash
+
+ cd ~/sb-hol;vi customapmresource.yaml
+
+ ```
+ ![Oracle Cloud console, Cloud Shell](images/4-3-2-appmon.png " ")
+
+ - Press the Esc key to ensure you are in command mode.
+ - Type :wq (colon followed by wq) in the vi editor.
+ - Press Enter to execute the command to save the file
+
+3. Apply **wstore.yaml**, **customapmresource.yaml**, **apmnamespace.yaml** to the Kubernetes cluster to enable APM for the application in the order mentioned below.
+
+ - To enable K8 Open Telemetry operator
+ ``` bash
+
+ kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.14.3/cert-manager.yaml
+
+ ```
+
+ ``` bash
+
+ kubectl apply -f https://github.com/open-telemetry/opentelemetry-operator/releases/latest/download/opentelemetry-operator.yaml
+
+ ```
+
+ - Map K8 Open Telemetry operator to inject APM java agent
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/customapmresource.yaml --validate=false
+
+ ```
+
+ - Inject APM java agent at the K8 namespace level
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/apmnamespace.yaml --validate=false
+
+ ```
+
+ - Enable browser agent
+ ``` bash
+
+ kubectl apply -f ~/sb-hol/wstore.yaml --validate=false
+
+ ```
+
+ ![Oracle Cloud console, Cloud Shell](images/4-3-3-appmon.png " ")
+ ![Oracle Cloud console, Cloud Shell](images/4-3-4-appmon.png " ")
+ ![Oracle Cloud console, Cloud Shell](images/4-3-5-appmon.png " ")
+
+
+ Now the APM is enabled for the application proceed to the next task.
+
+## Task 4: Generate workload by navigating to the app
+
+1. Click **Login**.
+
+ ![WineCellar Demo App](images/6-1-2-wstore.png " ")
+
+
+2. Enter your name (or john) as username, leave the password blank, and click **Login**.
+
+ ![WineCellar Demo App](images/6-1-4-demoapp.png " ")
+
+
+3. Then click around the buttons in the pages, as in the example flow shown below.
+
+ >**Note:** Do not worry if you see the "Failed" messages, or if it takes a long time for the pages to respond. Those are expected because the app is designed to fail every once and often for demo purposes.
+
+ Click **Add** on a couple of products then hit **Shopping Cart**. Then Click **Checkout**.
+ ![WineCellar Demo App](images/6-1-5-demoapp.png " ")
+ Click **Confirm Order**, then **Logout**.
+ ![WineCellar Demo App](images/6-1-6-demoapp.png " ")
+
+
+## Task 5: Examine traces in APM Trace Explorer
+
+1. From the OCI menu, select **Observability & Management** > **Trace Explorer**
+
+ ![Oracle Cloud, Navigation Menu](images/6-2-1-menu.png " ")
+
+2. On the Trace Explorer page, select **apmworkshop** for the **Compartment** and the **APM Domain**.
+
+ ![Oracle Cloud, Trace Explorer](images/6-2-2-traceexplorer.png " ")
+
+3. By default, traces are displayed in the order by the start time. Right mouse click on the **Duration** column, select **Sort Descending** to show the traces by duration in descending order. This will bring the slowest trace to the top of the list.
+
+ ![Oracle Cloud, Trace Explorer](images/6-2-3-traceexplorer.png " ")
+
+4. Hover the mouse over the bar in the **Spans** column at the top row. Verify three services are included in the trace, and each color represents a service, wstore-back, wstore-front, and wstore-web, which you defined in the previous labs.
+
+ ![Oracle Cloud, Trace Explorer](images/6-2-4-traceexplorer.png " ")
+
+5. Click the trace link at the **Service:Operationame** column.
+
+ ![Oracle Cloud, Trace Explorer](images/6-2-5-traceexplorer.png " ")
+
+ >**Note:** If you do not see a slow trace with a duration of 10 seconds or more, you can navigate the WineStore demo app a few times until you see the programmed slowness in the checkout service.
+
+6. **Trace Details** page opens. Review the trace information on the upper screen. E.g., Status, Trace ID, Whether it has an error or not, how many spans and services are involved, or the duration of the trace.
+ ![Oracle Cloud, Trace Explorer](images/6-2-6-traceexplorer.png " ")
+
+7. In the **Topology** view, you can see how the operations are connected within the trace. Different colors indicate different services. Hover the mouse on the icons and the arrows that connect the icons. Review the information in the callouts.
+ ![Oracle Cloud, Trace Explorer](images/6-2-7-traceexplorer.png " ")
+
+ In this example, it seems that the checkout service is where the most time was spent in the trace.
+
+ >**Note:** The operations may look differently in the trace you selected.
+
+8. Scroll down the page to show the **Spans** view. Spans in the trace are displayed in a Gantt chart. A span at the top of the list is the root span, and the child spans are nested below the root span.
+
+ ![Oracle Cloud, Trace Explorer](images/6-2-8-traceexplorer.png " ")
+
+ In this example, one of the operations is taking 9 seconds alone, out of the total duration of 10 seconds. This seems to be the bottleneck of the slowness.
+
+
+## Task 6: Enable Logging Analytics Service
+
+1. Navigate to Observability & Management and click Logging Analytics.
+
+ - From Navigation Menu ![navigation-menu](images/4-1-1-okela.png) > **Observability & Management** > **Logging Analytics**.
+
+ - Click **Start Using Logging Analytics**.
+ ![Oracle Cloud console, Enable Logging Analytics](images/4-1-2-okela.png " ")
+
+ - Review the policies that are automatically created and click **Next**.
+ ![Oracle Cloud console, Enable Logging Analytics](images/4-1-3-okela.png " ")
+
+ - Enable OCI audit log analysis and Click **Next**.
+ ![Oracle Cloud console, Enable Logging Analytics](images/4-1-4-okela.png " ")
+
+ - Logging Analytics Service is enabled in the tenancy. Click **Close**.
+ ![Oracle Cloud console, Enable Logging Analytics](images/4-1-5-okela.png " ")
+
+2. Navigate to Kubernetes Monitoring and Management application
+
+ To navigate to Kubernetes Monitoring and Management application, follow the given steps:
+
+ - From Navigation Menu ![navigation-menu](images/4-1-6-okela.png) > **Marketplace** > **All Applications**.
+
+ - In the search bar, enter the text **Kubernetes Monitoring and Management**.
+ - Click on the **Kubernetes Monitoring and Management** application to land on the application page.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-7-okela.png " ")
+
+
+3. Launch Kubernetes Monitoring and Management application
+
+ - Select the **v3.0.1 (12/3/2023) - default** version from the version dropdown.
+
+ - Select the compartment **appdev** from the dropdown.
+
+ - Check the **Terms and Restrictions** checkbox.
+
+ - Click on **Launch Stack** button to launch the application.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-8-okela.png " ")
+
+4. Configure Stack
+
+ - On **Create Stack** page, you will see the **Stack information**.
+
+ - Click on **Next** button to proceed to the Configure variables section.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-9-okela.png " ")
+
+
+ - In **Configure variables** section, you have to set the following variables for the stack:
+
+ - **OKE cluster Compartment:** Select the **appdev** compartment from the dropdown.
+
+ - **OKE Cluster:** Select the **k8-appdev** OKE cluster from the dropdown.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-10-okela.png " ")
+
+ - In OCI Observability and Management Services Configuration
+ - Select the compartment **appdev** from the dropdown.
+ - Check box to create a new log group and enter **appdevgrp** as the OCI Logging Analytics log group name
+ - Click on **Next** button to proceed to the Review section.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-11-okela.png " ")
+
+5. In **Review** section, you can see the stack configurations you selected in the previous steps.
+
+ - Click on the **Create** button to create the stack. This step will create an ORM (Oracle Resource Manager) job that uses [Terraform](https://github.com/oracle-quickstart/oci-kubernetes-monitoring/tree/main/terraform) to deploy the solution.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-12-okela.png " ")
+
+
+ - It will take around 90 seconds for the stack to get created.
+ ![Oracle Cloud console, Enable Logging Analytics for OKE](images/4-1-13-okela.png " ")
+
+## Task 7: Navigate to installed dashboards from Application Information tab
+
+1. After the stack creation is successful, it will take few seconds for the **Application information** tab to appear.
+![stack-creation](./images/stack-creation.png " ")
+
+2. Click on the **Application information** tab to view the application information.
+
+3. Click on the **View Dashboard** button to view the dashboards.
+ ![application-information](./images/application-information.png " ")
+
+
+## Task 8: Exploring Kubernetes Dashboards
+
+1. After clicking on the **View Dashboards** button, a new tab will open displaying all the dasboards.
+
+2. Click on the **Kubernetes Cluster Summary** dashboard. It will take few seconds for the dashboard widgets to load.
+![dashboards](./images/dashboards.png " ")
+
+3. Click on the **Scope Filter** panel.
+![scope-filter](./images/scope-filter.png " ")
+
+4. Select your user Compartment from the dropdown in the **Log Group Compartment** field. For your user the Compartment name will be in the format **LL{reservationid}-COMPARTMENT**, e.g. LL55379-COMPARTMENT. Select **oke-cw23-II** cluster in the **Kubernetes Cluster** field.
+![compartment-cluster](images/compartment-cluster.png)
+
+5. You should be able to see the all the widgets displaying the data specific to your OKE Cluster.
+![k8s-cluster-summary](images/k8s-cluster-summary.png)
+
+6. Scroll down to the **Container Logs** widget in the dashboard.
+![container-logs](images/container-logs.png)
+
+7. Click on the View Query Icon to view the query used to populate the data in widget.
+
+ ![view-query](images/view-query.png)
+ ![query](images/query.png)
+
+ After viewing the query, click on **Close** button.
+
+8. Click on the Punch Out Icon on the Container Logs widget.
+![punch-out](images/punch-out.png)
+
+9. This will take you to the **Pie Chart view** of Log Explorer in context of Kubernetes Cluster Name.
+![log-explorer](images/log-explorer.png)
+
+10. To navigate back to the Kubernetes Cluster Summary page, click on the **Kubernetes Cluster Summary** as highlighted in the image below.
+![summary-page](images/summary-page.png)
+
+11. Similarly you can explore other widgets in the Kubernetes Cluster Summary and other dashboards.
+
+
+## Acknowledgements
+
+* **Author** - Anand Prabhu, Principal Member of Technical Staff, Enterprise and Cloud Manageability
+- **Contributors** -
+Yutaka Takatsu, Senior Principal Product Manager,
+Avi Huber, Vice President, Product Management
+* **Last Updated By/Date** - Anand Prabhu, January 2024
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-1-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-1-okela.png
new file mode 100644
index 00000000..f2297c2f
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-1-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-10-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-10-okela.png
new file mode 100644
index 00000000..47aeba44
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-10-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-11-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-11-okela.png
new file mode 100644
index 00000000..587c2b3a
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-11-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-12-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-12-okela.png
new file mode 100644
index 00000000..13ad1a04
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-12-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-13-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-13-okela.png
new file mode 100644
index 00000000..e6379b87
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-13-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-2-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-2-okela.png
new file mode 100644
index 00000000..fc364399
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-2-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-3-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-3-okela.png
new file mode 100644
index 00000000..81633d5e
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-3-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-4-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-4-okela.png
new file mode 100644
index 00000000..01ef5f2e
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-4-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-5-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-5-okela.png
new file mode 100644
index 00000000..60e5530d
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-5-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-6-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-6-okela.png
new file mode 100644
index 00000000..855c072b
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-6-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-7-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-7-okela.png
new file mode 100644
index 00000000..134651cf
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-7-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-8-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-8-okela.png
new file mode 100644
index 00000000..be5b6563
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-8-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-9-okela.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-9-okela.png
new file mode 100644
index 00000000..701d7c69
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-1-9-okela.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-1-appmon.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-1-appmon.png
new file mode 100644
index 00000000..c79e1dad
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-1-appmon.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-2-appmon.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-2-appmon.png
new file mode 100644
index 00000000..c295b473
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-2-appmon.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-3-appmon.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-3-appmon.png
new file mode 100644
index 00000000..b7761b1b
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-3-appmon.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-4-appmon.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-4-appmon.png
new file mode 100644
index 00000000..91565724
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-4-appmon.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-5-appmon.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-5-appmon.png
new file mode 100644
index 00000000..230b373c
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/4-3-5-appmon.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-1-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-1-apmdomain.png
new file mode 100644
index 00000000..cafabde9
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-1-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-2-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-2-apmdomain.png
new file mode 100644
index 00000000..f8f85f43
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-2-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-3-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-3-apmdomain.png
new file mode 100644
index 00000000..e3e10b4c
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-3-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-4-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-4-apmdomain.png
new file mode 100644
index 00000000..2424f701
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-4-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-5-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-5-apmdomain.png
new file mode 100644
index 00000000..c0ec8111
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-5-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-6-apmdomain.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-6-apmdomain.png
new file mode 100644
index 00000000..6b4fa87f
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/5-1-6-apmdomain.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-2-wstore.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-2-wstore.png
new file mode 100644
index 00000000..409ac13a
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-2-wstore.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-4-demoapp.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-4-demoapp.png
new file mode 100644
index 00000000..6054a65e
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-4-demoapp.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-5-demoapp.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-5-demoapp.png
new file mode 100644
index 00000000..b20aa392
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-5-demoapp.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-6-demoapp.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-6-demoapp.png
new file mode 100644
index 00000000..6328c432
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-6-demoapp.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-7-demoapp.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-7-demoapp.png
new file mode 100644
index 00000000..025b2e21
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-1-7-demoapp.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-1-menu.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-1-menu.png
new file mode 100644
index 00000000..4229aa09
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-1-menu.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-2-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-2-traceexplorer.png
new file mode 100644
index 00000000..43325c76
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-2-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-3-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-3-traceexplorer.png
new file mode 100644
index 00000000..d5cf5566
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-3-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-4-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-4-traceexplorer.png
new file mode 100644
index 00000000..f5524c28
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-4-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-5-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-5-traceexplorer.png
new file mode 100644
index 00000000..7a6e23d9
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-5-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-6-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-6-traceexplorer.png
new file mode 100644
index 00000000..b947f464
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-6-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-7-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-7-traceexplorer.png
new file mode 100644
index 00000000..bce3ed11
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-7-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-8-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-8-traceexplorer.png
new file mode 100644
index 00000000..70225ea0
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-8-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-9-traceexplorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-9-traceexplorer.png
new file mode 100644
index 00000000..a3d76322
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/6-2-9-traceexplorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/application-information.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/application-information.png
new file mode 100644
index 00000000..a7a4440a
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/application-information.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/compartment-cluster.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/compartment-cluster.png
new file mode 100644
index 00000000..ab1eb913
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/compartment-cluster.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/configure-varaibles.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/configure-varaibles.png
new file mode 100644
index 00000000..13c45bc5
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/configure-varaibles.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/container-logs.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/container-logs.png
new file mode 100644
index 00000000..9f1d2209
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/container-logs.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/dashboards.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/dashboards.png
new file mode 100644
index 00000000..e3b361ce
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/dashboards.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-launch.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-launch.png
new file mode 100644
index 00000000..8c6b5c7a
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-launch.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-search.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-search.png
new file mode 100644
index 00000000..fb945213
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app-search.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app.png
new file mode 100644
index 00000000..f5eeb28b
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-app.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-cluster-summary.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-cluster-summary.png
new file mode 100644
index 00000000..2b1ab438
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/k8s-cluster-summary.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/log-explorer.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/log-explorer.png
new file mode 100644
index 00000000..8b73c277
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/log-explorer.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/marketplace-navigation.gif b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/marketplace-navigation.gif
new file mode 100644
index 00000000..b34bf069
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/marketplace-navigation.gif differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/navigation-menu.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/navigation-menu.png
new file mode 100644
index 00000000..69c2f1c0
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/navigation-menu.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/punch-out.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/punch-out.png
new file mode 100644
index 00000000..3f95dba0
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/punch-out.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/query.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/query.png
new file mode 100644
index 00000000..dd3e7567
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/query.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/review-stack.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/review-stack.png
new file mode 100644
index 00000000..2b9745bc
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/review-stack.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/scope-filter.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/scope-filter.png
new file mode 100644
index 00000000..a58662fb
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/scope-filter.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-creation.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-creation.png
new file mode 100644
index 00000000..e3472e3d
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-creation.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-execution.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-execution.png
new file mode 100644
index 00000000..5aabdee0
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-execution.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-information.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-information.png
new file mode 100644
index 00000000..6d1a5456
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/stack-information.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/summary-page.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/summary-page.png
new file mode 100644
index 00000000..327a7aa9
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/summary-page.png differ
diff --git a/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/view-query.png b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/view-query.png
new file mode 100644
index 00000000..b71569aa
Binary files /dev/null and b/mysql/oci-oraca-mysql/e-lab-four-app-monitoring/images/view-query.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/cleanup.md b/mysql/oci-oraca-mysql/f-lab-five-cleanup/cleanup.md
new file mode 100644
index 00000000..6ba9f6bd
--- /dev/null
+++ b/mysql/oci-oraca-mysql/f-lab-five-cleanup/cleanup.md
@@ -0,0 +1,163 @@
+# Clean up the workshop environment
+
+## Introduction
+
+In this lab, you will clean up the workshop environment by running commands from the Cloud shell, also manually removing the Oracle cloud resources using the Oracle Cloud console.
+
+Estimated time: 10 minutes
+
+### Objectives
+
+* Remove the lab configurations and setups
+
+### Prerequisites
+
+* Completion of preceding labs in this workshop.
+
+## Task 1: Clean Up the application setup
+
+To delete the workshop setup from your tenancy, follow the steps below.
+
+1. Run the oci ce (Container Engine) command that you saved in Lab 3, Task 2, step 5.
+
+2. Remove the application deployment.
+
+ ``` bash
+
+ kubectl delete -f ~/sb-hol/wstore.yaml
+
+ ```
+
+3. Remove the storage configuration from the cluster.
+
+ a) If you created a file system, run the command below.
+ ``` bash
+
+ kubectl delete -f ~/sb-hol/apmlab-fss.yaml
+
+ ```
+ ![Oracle Cloud, Cloud Shell](images/4-1-cleanup.png " ")
+
+ b) If you created block volumes, run the command below.
+
+ ``` bash
+
+ kubectl delete -f ~/sb-hol/apmlab-pvc.yaml
+
+ ```
+
+
+## Task 2: Remove the Target Mount and the File System
+
+If you created a file system, complete steps 1 - 6 below. If you created block volumes instead, please proceed to the next Task.
+
+1. From the navigation menu in the Oracle Cloud console, select **Storage** > **Mount Target**.
+ Then click the link to the MountTarget configured in the workshop.
+
+ ![Oracle Cloud, Cloud console](images/4-2-cleanup.png " ")
+
+2. In the **Mount Target Details** page, click **Delete**. In the confirmation window, click **Delete**.
+
+ ![Oracle Cloud, Cloud console](images/4-3-cleanup.png " ")
+
+3. Deletion of the Mount Target starts and completes.
+
+ ![Oracle Cloud, Cloud console](images/4-4-cleanup.png " ")
+
+4. From the navigation menu in the Oracle Cloud console, select **Storage** > **File Systems**. Then click the link to the File System configured in the workshop.
+
+ ![Oracle Cloud, Cloud console](images/4-5-cleanup.png " ")
+
+5. In the **File System Details** page, click **Delete**. In the confirmation window, click **Delete**.
+
+ ![Oracle Cloud, Cloud console](images/4-6-cleanup.png " ")
+
+6. Deletion of the File System starts and completes.
+
+ ![Oracle Cloud, Cloud console](images/4-7-cleanup.png " ")
+
+
+
+
+## Task 3: Remove the container
+
+1. From the navigation menu in the Oracle Cloud console, select **Developer Services** > **Kubernetes Container(OKE)**. Then click the link to the Cluster configured in the workshop.
+
+ ![Oracle Cloud, Cloud console](images/4-8-cleanup.png " ")
+
+2. In the **Cluster Details** page, click **Delete**. In the confirmation window, enter the name of the cluster, then click **Delete**.
+
+ ![Oracle Cloud, Cloud console](images/4-9-cleanup.png " ")
+
+3. Deletion of the File System starts and completes.
+
+ ![Oracle Cloud, Cloud console](images/4-10-cleanup.png " ")
+
+## Task 4: Remove the VCN
+
+1. From the navigation menu in the Oracle Cloud console, select **Networking** > **Virtual Cloud Networks**. Then click the link to the VCN configured in the workshop.
+
+ ![Oracle Cloud, Cloud console](images/4-11-cleanup.png " ")
+
+2. In the **Virtual Cloud Network Details** page, scroll down to locate the **Subnets** section. Select one of the subnets and click the three-dot icon on the right-hand side of the row.
+
+ ![Oracle Cloud, Cloud console](images/4-12-cleanup.png " ")
+
+3. From the pulldown menu, select **Terminate**. In the confirmation window, click **Terminate**.
+
+ ![Oracle Cloud, Cloud console](images/4-13-cleanup.png " ")
+
+4. Repeat to terminate other subnets. Once all the subnets are deleted, from the upper side of the VCN details page, click **Terminate** to remove the VCN.
+
+ ![Oracle Cloud, Cloud console](images/4-14-cleanup.png " ")
+
+5. **Delete Virtual Cloud Network** dialog opens. Click **Scan**.
+
+
+ ![Oracle Cloud, Cloud console](images/4-14-2-cleanup.png " ")
+
+
+
+6. Click the **Terminate All** button when activated. Termination of the resources begins. Once the message **Virtual Cloud Network termination complete** shows, click **Close**.
+ ![Oracle Cloud, Cloud console](images/4-15-cleanup.png " ")
+
+## Task 5: Remove the workshop directory
+
+1. Open the Oracle Cloud shell, and run the following commands to remove the files and the workshop directory.
+
+ ``` bash
+
+ cd ~; rm apm-java-agent-installer-*.jar; rm index.html; rm -r sb-hol;rm sb-hol.zip
+
+ ```
+ ![Oracle Cloud, Cloud console](images/4-16-cleanup.png " ")
+
+## Task 6: Remove the APM domain and compartment
+
+ 1. From the navigation menu in the Oracle Cloud console, select **Observability & Management** > **Administration**. Then click the link to the APM domain which you created in the workshop.
+ ![Oracle Cloud, Cloud console](images/6-1-cleanup.png " ")
+
+ 2. In the **Domain details** page, click **Delete**. In the confirmation window, enter the name of the APM domain, then click **Delete**.
+ ![Oracle Cloud, Cloud console](images/6-2-cleanup.png " ")
+
+ 3. Deletion of the APM domain starts and completes. This may take a few minutes. Refresh the screen periodically and check the status.
+ ![Oracle Cloud, Cloud console](images/6-3-cleanup.png " ")
+
+ 4. From the navigation menu in the Oracle Cloud console, select **Identity & Security** > **Compartment**. Then click the link to the compartment which you created in the workshop.
+ ![Oracle Cloud, Cloud console](images/6-4-cleanup.png " ")
+
+ 5. In the **Compartment details** page, click **Delete**. In the confirmation window, click **Delete**.
+ ![Oracle Cloud, Cloud console](images/6-5-cleanup.png " ")
+
+ 6. Deletion of the compartment starts and completes. This may take a few minutes.
+ ![Oracle Cloud, Cloud console](images/6-6-cleanup.png " ")
+
+
+
+## Acknowledgements
+
+* **Author** - Anand Prabhu, Principal Member of Technical Staff, Enterprise and Cloud Manageability
+- **Contributors** -
+Yutaka Takatsu, Senior Principal Product Manager,
+Avi Huber, Vice President, Product Management
+* **Last Updated By/Date** - Anand Prabhu, January 2024
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-1-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-1-cleanup.png
new file mode 100644
index 00000000..f9042ed3
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-1-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-10-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-10-cleanup.png
new file mode 100644
index 00000000..66134b4c
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-10-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-11-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-11-cleanup.png
new file mode 100644
index 00000000..59dde5dc
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-11-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-12-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-12-cleanup.png
new file mode 100644
index 00000000..c12f189b
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-12-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-13-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-13-cleanup.png
new file mode 100644
index 00000000..10738144
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-13-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-2-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-2-cleanup.png
new file mode 100644
index 00000000..dce73e92
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-2-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-cleanup.png
new file mode 100644
index 00000000..88a8077f
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-14-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-15-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-15-cleanup.png
new file mode 100644
index 00000000..72c034ea
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-15-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-16-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-16-cleanup.png
new file mode 100644
index 00000000..8e803714
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-16-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-2-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-2-cleanup.png
new file mode 100644
index 00000000..6334523c
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-2-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-3-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-3-cleanup.png
new file mode 100644
index 00000000..4e56135e
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-3-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-4-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-4-cleanup.png
new file mode 100644
index 00000000..3fe5dc04
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-4-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-5-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-5-cleanup.png
new file mode 100644
index 00000000..43f3a594
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-5-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-6-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-6-cleanup.png
new file mode 100644
index 00000000..1f3a65af
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-6-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-7-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-7-cleanup.png
new file mode 100644
index 00000000..f78e9d99
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-7-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-8-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-8-cleanup.png
new file mode 100644
index 00000000..e092a6c2
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-8-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-9-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-9-cleanup.png
new file mode 100644
index 00000000..6969809d
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/4-9-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-1-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-1-cleanup.png
new file mode 100644
index 00000000..0a7d17f4
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-1-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-2-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-2-cleanup.png
new file mode 100644
index 00000000..d69c3492
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-2-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-3-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-3-cleanup.png
new file mode 100644
index 00000000..5f4c7d09
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-3-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-4-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-4-cleanup.png
new file mode 100644
index 00000000..d5ae53b1
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-4-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-5-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-5-cleanup.png
new file mode 100644
index 00000000..b022f631
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-5-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-6-cleanup.png b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-6-cleanup.png
new file mode 100644
index 00000000..ee32d5a9
Binary files /dev/null and b/mysql/oci-oraca-mysql/f-lab-five-cleanup/images/6-6-cleanup.png differ
diff --git a/mysql/oci-oraca-mysql/workshops/freetier/index.html b/mysql/oci-oraca-mysql/workshops/freetier/index.html
new file mode 100644
index 00000000..aaac634b
--- /dev/null
+++ b/mysql/oci-oraca-mysql/workshops/freetier/index.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+ Oracle LiveLabs
+
+
+
+
+
+
+
+
+
+
+
+
+
Oracle LiveLabs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mysql/oci-oraca-mysql/workshops/freetier/manifest.json b/mysql/oci-oraca-mysql/workshops/freetier/manifest.json
new file mode 100644
index 00000000..8153cd0b
--- /dev/null
+++ b/mysql/oci-oraca-mysql/workshops/freetier/manifest.json
@@ -0,0 +1,46 @@
+{
+ "workshoptitle": "Build microservice application using Oracle AI Code Assist and MySQL Heatwave Database",
+ "help": "livelabs-help-em_us@oracle.com",
+ "tutorials": [
+ {
+ "title": "Introduction",
+ "description": "Introduction",
+ "filename": "../../a-introduction/introduction.md"
+ },
+ {
+ "title": "Get Started",
+ "description": "This is the prerequisites for customers using Free Trial and Paid tenancies, and Always Free accounts (if applicable). The title of the lab and the Contents Menu title (the title above) match for Prerequisite lab. This lab is always first.",
+ "filename": "https://oracle-livelabs.github.io/common/labs/cloud-login/cloud-login.md"
+ },
+ {
+ "title": "Lab 1: Environment Setup",
+ "description": "Environment Setup",
+ "filename": "../../b-lab-one-envsetup/environmentsetup.md"
+ },
+ {
+ "title": "Lab 2: Deploy a microservices application",
+ "description": "Deploy a microservices application",
+ "filename": "../../c-lab-two-deploy-app/deploy-app.md"
+ },
+ {
+ "title": "Lab 3: Enhance application with new microservice built using Oracle AI Code Assist",
+ "description": "Build new microservice using Oracle AI Code Assist",
+ "filename": "../../d-lab-three-extend&deploy-app-oraca/oraca-codeassist.md"
+ },
+ {
+ "title": "Lab 4: End to End Application Monitoring using OCI O&M Services",
+ "description": "End to End Application Monitoring using OCI O&M Services",
+ "filename": "../../e-lab-four-app-monitoring/enbale_om_services.md"
+ },
+ {
+ "title": "Lab 5: Clean up the workshop environment",
+ "description": "Clean up the workshop environment",
+ "filename": "../../f-lab-five-cleanup/cleanup.md"
+ },
+ {
+ "title": "Need Help?",
+ "description": "Solutions to Common Problems and Directions for Receiving Live Help",
+ "filename": "https://oracle-livelabs.github.io/common/labs/need-help/need-help-freetier.md"
+ }
+ ]
+}