Skip to content

Commit

Permalink
Merge pull request #816 from crane-cloud/fx-activties-url
Browse files Browse the repository at this point in the history
fx: change the logic for fetching activity logs
  • Loading branch information
khalifan-kfan committed May 23, 2024
2 parents 6705776 + cf2cb3c commit 8e355e3
Show file tree
Hide file tree
Showing 7 changed files with 43 additions and 14 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/microservice.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ jobs:
- name: Add Env vars
env:
REACT_APP_API_BASE_URL: https://product.renu-01.cranecloud.io
REACT_APP_ACTIVITY_LOGS_API_URL: https://logger.renu-01.cranecloud.io/api
REACT_APP_MONITORING_API_URL: https://monitoring.renu-01.cranecloud.io
REACT_APP_MIRA_API_URL: ${{ secrets.REACT_APP_MIRA_API_URL }}
REACT_APP_FLUTTERWAVE_PUBLIC_KEY_TESTING: ${{ secrets.REACT_APP_FLUTTERWAVE_PUBLIC_KEY_TESTING }}
REACT_APP_GITHUB_CLEINT_ID: ${{ secrets.REACT_APP_GITHUB_CLEINT_ID_STAGING }}
Expand Down
16 changes: 15 additions & 1 deletion src/apis/apis.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import axios from "../axios";
import axios,{userActivityLoggerAxios} from "../axios";


export const handlePostRequestWithDataObject = (data, endpoint) => {
return new Promise((resolve, reject) => {
Expand Down Expand Up @@ -40,6 +41,19 @@ export const handleGetRequest = (endpoint) => {
});
};

export const handleUserActivitiesGetRequest = (endpoint) => {
return new Promise((resolve, reject) => {
userActivityLoggerAxios
.get(endpoint)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(error);
});
});
};

export const handlePatchRequest = (endpoint, data) => {
return new Promise((resolve, reject) => {
axios
Expand Down
15 changes: 13 additions & 2 deletions src/axios.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
import axios from "axios";
import { API_BASE_URL, MONITORING_API_URL } from "./config";
import { API_BASE_URL, ACTIVITY_LOGS_API_URL, MONITORING_API_URL } from "./config";



// Create main backend axios instance
const instance = axios.create({
baseURL: API_BASE_URL,
});
// Create activity axios instance
const userActivityLoggerAxios = axios.create({
baseURL: ACTIVITY_LOGS_API_URL,
});

// Create monitoring axios instance
const monitoringAxios = axios.create({
Expand All @@ -14,6 +20,7 @@ const monitoringAxios = axios.create({
// Set default headers
const token = localStorage.getItem("token");
instance.defaults.headers.Authorization = `Bearer ${token}`;
userActivityLoggerAxios.defaults.headers.Authorization = `Bearer ${token}`;
monitoringAxios.defaults.headers.Authorization = `Bearer ${token}`;

// Define response interceptor function
Expand All @@ -34,10 +41,14 @@ const errorInterceptor = (error) => {

// Add response interceptors to both instances
instance.interceptors.response.use(responseInterceptor, errorInterceptor);
userActivityLoggerAxios.interceptors.response.use(
responseInterceptor,
errorInterceptor
);
monitoringAxios.interceptors.response.use(
responseInterceptor,
errorInterceptor
);

export { instance, monitoringAxios };
export { instance, userActivityLoggerAxios, monitoringAxios };
export default instance;
6 changes: 3 additions & 3 deletions src/components/ActivityLogs/index.jsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import styles from "./ActivityLogs.module.css";
import { handleGetRequest } from "../../apis/apis.js";
import { handleUserActivitiesGetRequest } from "../../apis/apis.js";
import { ReactComponent as CheckMark } from "../../assets/images/check-circle.svg";
import { ReactComponent as Danger } from "../../assets/images/alert-octagon.svg";
// import { ReactComponent as CloudOff } from "../../assets/images/cloud-off.svg";
Expand Down Expand Up @@ -32,7 +32,7 @@ const ActivityLogs = ({ projectID }) => {
//api
const [loading, setLoading] = useState(false);
const [logs, setLogs] = useState([]);
const baseLinkRef = useRef(`/users/activities?`);
const baseLinkRef = useRef(`/activities?`);
// const baseLink = baseLinkRef.current;
useEffect(() => {
if (projectID) {
Expand All @@ -49,7 +49,7 @@ const ActivityLogs = ({ projectID }) => {

const fetchActivityLogs = (link) => {
setLoading(true);
handleGetRequest(link)
handleUserActivitiesGetRequest(link)
.then((response) => {
if (response.data.data.activity.length > 0) {
setLogs(response.data.data.activity);
Expand Down
3 changes: 3 additions & 0 deletions src/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,8 @@ export const JUPYTERHUB_URL =
"https://jupiter-a13faf8e-83e0-4930-8898.cranecloud.io";
export const MIRA_DOCS_URL =
"https://docs.cranecloud.io/applications/deployWithMira/";


export const ACTIVITY_LOGS_API_URL = process.env.REACT_APP_ACTIVITY_LOGS_API_URL;
// monitoring api
export const MONITORING_API_URL = process.env.REACT_APP_MONITORING_API_URL;
6 changes: 3 additions & 3 deletions src/pages/AdminLogsPage/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React, { useState, useEffect } from "react";
// import { useParams } from "react-router-dom";
import { handleGetRequest } from "../../apis/apis.js";
import { handleGetRequest, handleUserActivitiesGetRequest } from "../../apis/apis.js";
import InformationBar from "../../components/InformationBar";
import Header from "../../components/Header";
import SideNav from "../../components/SideNav";
Expand All @@ -21,7 +21,7 @@ import AppFooter from "../../components/appFooter/index.js";
const AdminLogsPage = () => {
const clusterID = localStorage.getItem("clusterID");

const baseLink = "/users/activities?";
const baseLink = "/activities?";
const [loading, setLoading] = useState(false);
const [logs, setLogs] = useState([]);
const [users, setUsers] = useState([]);
Expand Down Expand Up @@ -85,7 +85,7 @@ const AdminLogsPage = () => {
const fetchActivityLogs = (link) => {
setLoading(true);
//projectID
handleGetRequest(link)
handleUserActivitiesGetRequest(link)
.then((response) => {
if (response.data.data.activity.length > 0) {
setLogs(response.data.data.activity);
Expand Down
9 changes: 4 additions & 5 deletions src/redux/actions/getUserActivities.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import axios from "../../axios";
import {userActivityLoggerAxios} from "../../axios";
import {
GETTING_USER_ACTIVITIES,
USER_ACTIVITIES_SUCCESS,
Expand Down Expand Up @@ -27,12 +27,11 @@ const getUserActivities = (qeuryParams, currentPage) => (dispatch) => {

let link;
if (qeuryParams !== "" && currentPage !== "") {
link = `/users/activities?${qeuryParams}&page=${currentPage}`;
link = `/activities?${qeuryParams}&page=${currentPage}`;
} else {
link = `/users/activities?page=${currentPage}`;
link = `/activities?page=${currentPage}`;
}

return axios
return userActivityLoggerAxios
.get(link)
.then((response) => {
dispatch(userActivitiesSuccess(response));
Expand Down

0 comments on commit 8e355e3

Please sign in to comment.