diff --git a/frontend/conf/default.conf b/frontend/conf/default.conf index 955432bec2..ec9fb99d70 100644 --- a/frontend/conf/default.conf +++ b/frontend/conf/default.conf @@ -1,6 +1,15 @@ server { listen 3000; server_name _; + + gzip on; + gzip_static on; + gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; + gzip_proxied any; + gzip_vary on; + gzip_comp_level 6; + gzip_buffers 16 8k; + gzip_http_version 1.1; location / { root /usr/share/nginx/html; diff --git a/frontend/package.json b/frontend/package.json index e1f69e34db..07e69ad6df 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -147,7 +147,6 @@ "prettier": "2.2.1", "react-hot-loader": "^4.13.0", "react-is": "^17.0.1", - "webpack-bundle-analyzer": "^4.4.2", "webpack-cli": "^4.5.0" } } diff --git a/frontend/src/store/actions/traceFilters.ts b/frontend/src/store/actions/traceFilters.ts index 53723d28fb..7922710bc6 100644 --- a/frontend/src/store/actions/traceFilters.ts +++ b/frontend/src/store/actions/traceFilters.ts @@ -32,16 +32,4 @@ export const updateTraceFilters = (traceFilters: TraceFilters) => { }; }; -export interface updateInputTagAction { - type: ActionTypes.updateInput; - payload: string; -} - -export const updateInputTag = (Input: string) => { - return { - type: ActionTypes.updateInput, - payload: Input, - }; -}; - //named export when you want to export multiple functions from the same file diff --git a/frontend/src/store/reducers/index.ts b/frontend/src/store/reducers/index.ts index 696a7f1750..62b7c7676a 100644 --- a/frontend/src/store/reducers/index.ts +++ b/frontend/src/store/reducers/index.ts @@ -9,7 +9,7 @@ import { } from "../actions"; import { updateGlobalTimeReducer } from "./global"; import { MetricsInitialState, metricsReducer } from "./metrics"; -import { traceFiltersReducer, inputsReducer } from "./traceFilters"; +import TraceFilterReducer from "./traceFilters"; import { traceItemReducer, tracesReducer } from "./traces"; import { usageDataReducer } from "./usage"; import { ServiceMapReducer } from "./serviceMap"; @@ -25,8 +25,7 @@ export interface StoreState { } const reducers = combineReducers({ - traceFilters: traceFiltersReducer, - inputTag: inputsReducer, + traceFilters: TraceFilterReducer, traces: tracesReducer, traceItem: traceItemReducer, usageDate: usageDataReducer, diff --git a/frontend/src/store/reducers/serviceMap.ts b/frontend/src/store/reducers/serviceMap.ts index aef22e17f1..f3a5db4fe4 100644 --- a/frontend/src/store/reducers/serviceMap.ts +++ b/frontend/src/store/reducers/serviceMap.ts @@ -1,12 +1,11 @@ import { ActionTypes, Action, serviceMapStore } from "../actions"; -export const ServiceMapReducer = ( - state: serviceMapStore = { - items: [], - services: [], - }, - action: Action, -) => { +const initialState: serviceMapStore = { + items: [], + services: [], +}; + +export const ServiceMapReducer = (state = initialState, action: Action) => { switch (action.type) { case ActionTypes.getServiceMapItems: return { diff --git a/frontend/src/store/reducers/traceFilters.ts b/frontend/src/store/reducers/traceFilters.ts index 05fe240edb..32aa198f1f 100644 --- a/frontend/src/store/reducers/traceFilters.ts +++ b/frontend/src/store/reducers/traceFilters.ts @@ -1,19 +1,17 @@ -import { - ActionTypes, - TraceFilters, - updateInputTagAction, - updateTraceFiltersAction, -} from "../actions"; +import { ActionTypes, TraceFilters } from "../actions"; -export const traceFiltersReducer = ( - state: TraceFilters = { - service: "", - tags: [], - operation: "", - latency: { min: "", max: "" }, - }, - action: updateTraceFiltersAction, -) => { +type ACTION = { + type: ActionTypes; + payload: TraceFilters; +}; +const initialState: TraceFilters = { + service: "", + tags: [], + operation: "", + latency: { min: "", max: "" }, +}; + +const TraceFilterReducer = (state = initialState, action: ACTION) => { switch (action.type) { case ActionTypes.updateTraceFilters: return action.payload; @@ -22,14 +20,4 @@ export const traceFiltersReducer = ( } }; -export const inputsReducer = ( - state: string = "", - action: updateInputTagAction, -) => { - switch (action.type) { - case ActionTypes.updateInput: - return action.payload; - default: - return state; - } -}; +export default TraceFilterReducer; diff --git a/frontend/webpack.config.js b/frontend/webpack.config.js index 476ea39b37..7fa3d44086 100644 --- a/frontend/webpack.config.js +++ b/frontend/webpack.config.js @@ -2,7 +2,6 @@ const { resolve } = require("path"); const HtmlWebpackPlugin = require("html-webpack-plugin"); console.log(resolve(__dirname, "./src/")); -const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; module.exports = { mode: "development", @@ -57,7 +56,6 @@ module.exports = { }, plugins: [ new HtmlWebpackPlugin({ template: "src/index.html.ejs" }), - new BundleAnalyzerPlugin() ], performance: { hints: false, diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 00f4d00d04..18886a2ff6 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1574,11 +1574,6 @@ schema-utils "^2.6.5" source-map "^0.7.3" -"@polka/url@^1.0.0-next.15": - version "1.0.0-next.15" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.15.tgz#6a9d143f7f4f49db2d782f9e1c8839a29b43ae23" - integrity sha512-15spi3V28QdevleWBNXE4pIls3nFZmBbUGrW9IVPwiQczuSb9n76TCB4bsk8TSel+I1OkHEdPhu5QKMfY6rQHA== - "@rollup/plugin-node-resolve@^7.1.1": version "7.1.3" resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz#80de384edfbd7bfc9101164910f86078151a3eca" @@ -2596,11 +2591,6 @@ acorn-walk@^7.1.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.1.0.tgz#d3c6a9faf00987a5e2b9bdb506c2aa76cd707f83" - integrity sha512-mjmzmv12YIG/G8JQdQuz2MUDShEJ6teYpT5bmWA4q7iwoGen8xtt3twF3OvzIUl+Q06aWIjvnwQUKvQ6TtMRjg== - acorn@^7.1.0, acorn@^7.1.1, acorn@^7.4.0: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" @@ -5486,7 +5476,7 @@ dtype@^2.0.0: resolved "https://registry.yarnpkg.com/dtype/-/dtype-2.0.0.tgz#cd052323ce061444ecd2e8f5748f69a29be28434" integrity sha1-zQUjI84GFETs0uj1dI9popvihDQ= -duplexer@^0.1.1, duplexer@^0.1.2: +duplexer@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== @@ -6946,13 +6936,6 @@ gzip-size@5.1.1: duplexer "^0.1.1" pify "^4.0.1" -gzip-size@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" - integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== - dependencies: - duplexer "^0.1.2" - handle-thing@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" @@ -9035,7 +9018,7 @@ mime@1.6.0, mime@^1.3.4, mime@^1.4.1: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.3.1, mime@^2.4.4: +mime@^2.4.4: version "2.5.2" resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== @@ -9601,11 +9584,6 @@ opencollective-postinstall@^2.0.2: resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== -opener@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" - integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== - opn@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" @@ -12236,15 +12214,6 @@ simple-get@^2.7.0: once "^1.3.1" simple-concat "^1.0.0" -sirv@^1.0.7: - version "1.0.12" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.12.tgz#d816c882b35489b3c63290e2f455ae3eccd5f652" - integrity sha512-+jQoCxndz7L2tqQL4ZyzfDhky0W/4ZJip3XoOuxyQWnAwMxindLl3Xv1qT4x1YX/re0leShvTm8Uk0kQspGhBg== - dependencies: - "@polka/url" "^1.0.0-next.15" - mime "^2.3.1" - totalist "^1.0.0" - sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" @@ -13096,11 +13065,6 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== -totalist@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" - integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== - tough-cookie@^2.3.3, tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -13657,21 +13621,6 @@ webidl-conversions@^6.1.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== -webpack-bundle-analyzer@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.2.tgz#39898cf6200178240910d629705f0f3493f7d666" - integrity sha512-PIagMYhlEzFfhMYOzs5gFT55DkUdkyrJi/SxJp8EF3YMWhS+T9vvs2EoTetpk5qb6VsCq02eXTlRDOydRhDFAQ== - dependencies: - acorn "^8.0.4" - acorn-walk "^8.0.0" - chalk "^4.1.0" - commander "^6.2.0" - gzip-size "^6.0.0" - lodash "^4.17.20" - opener "^1.5.2" - sirv "^1.0.7" - ws "^7.3.1" - webpack-cli@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.5.0.tgz#b5213b84adf6e1f5de6391334c9fa53a48850466" @@ -14146,11 +14095,6 @@ ws@^7.2.3: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.3.tgz#1f9643de34a543b8edb124bdcbc457ae55a6e5cd" integrity sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA== -ws@^7.3.1: - version "7.4.6" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" - integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== - xhr-request@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed"