Skip to content

Commit be753f5

Browse files
committed
updated the UI, fixed analytics, added docker file
1 parent ee72572 commit be753f5

File tree

12 files changed

+116
-124
lines changed

12 files changed

+116
-124
lines changed

src/compose-rabbitmq.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ services:
1919
- rabbitmq-logs:/var/log/rabbitmq
2020
ports:
2121
- 33721:5672
22+
- 15672:15672
23+
2224
configs:
2325
- source: plugins
2426
target: /etc/rabbitmq/enabled_plugins

src/compose-sqs.yml

Lines changed: 0 additions & 12 deletions
This file was deleted.

src/docker-compose-base.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,16 @@ services:
4242
SERVICECONTROL_URL: http://localhost:33333/api/
4343
ENABLE_REVERSE_PROXY: false
4444
SHOW_PENDING_RETRY: false
45-
45+
vue-app:
46+
build:
47+
context: ./frontend # Point to the frontend folder
48+
dockerfile: Dockerfile # Use the Dockerfile in the frontend folder
49+
container_name: vue-app-container
50+
ports:
51+
- "61335:8080" # Map port 8080 in the container to 61335 on the host
52+
volumes:
53+
- ./frontend:/app # Mount the frontend folder into the container
54+
- /app/node_modules # Prevent overwriting node_modules
55+
command: "npm install && npm run dev" # Development mode command
4656
volumes:
4757
sc-data:

src/frontend/Dockerfile

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
FROM node:lts-alpine
2+
3+
# install simple http server for serving static content
4+
RUN npm install -g http-server
5+
6+
# make the 'app' folder the current working directory
7+
WORKDIR /app
8+
9+
# copy both 'package.json' and 'package-lock.json' (if available)
10+
COPY package*.json ./
11+
12+
# install project dependencies
13+
RUN npm install
14+
15+
# copy project files and folders to the current working directory (i.e. 'app' folder)
16+
COPY . .
17+
18+
# build app for production with minification
19+
RUN npm run build
20+
21+
EXPOSE 8080
22+
CMD [ "http-server", "dist" ]

src/frontend/index.html

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,25 @@
11
<!DOCTYPE html>
22
<html lang="">
33
<head>
4-
<meta charset="UTF-8" />
5-
<link rel="icon" href="/favicon.ico" />
6-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
4+
<meta charset="UTF-8"/>
5+
<link rel="icon" href="/favicon.ico"/>
6+
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
77
<title>MassTransit Message Retry Showcase</title>
88
<!-- Google Tag Manager -->
99
<script>
1010
(function (w, d, s, l, i) {
1111
w[l] = w[l] || [];
12-
w[l].push({ "gtm.start": new Date().getTime(), event: "gtm.js" });
12+
w[l].push({"gtm.start": new Date().getTime(), event: "gtm.js"});
1313
var f = d.getElementsByTagName(s)[0],
1414
j = d.createElement(s),
15-
dl = l != "dataLayer" ? "&l=" + l : "";
15+
dl = l != "dataLayer"
16+
? "&l=" + l
17+
: "";
1618
j.async = true;
1719
j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl;
18-
f.parentNode.insertBefore(j, f);
20+
f
21+
.parentNode
22+
.insertBefore(j, f);
1923
})(window, document, "script", "dataLayer", "GTM-N895C5BN ");
2024
</script>
2125
<!-- End Google Tag Manager -->
@@ -34,4 +38,4 @@
3438
<div id="app"></div>
3539
<script type="module" src="/src/main.ts"></script>
3640
</body>
37-
</html>
41+
</html>

src/frontend/public/azure.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,13 @@
1-
# This is Azure
1+
# Azure Service Bus
2+
3+
1. Open this azure.env file and provide your namespace
4+
2. Paste the code below to make sure you have your container ready.
5+
`//your docker stuff here`
6+
3. provide the list of queues you want to monitor by editing the `queues.txt` file. e.g. `myqueue_error`
7+
4. Open a CLI of preference and run these commands:
8+
9+
```cmd
10+
// Your code goes here
11+
docker compose down
12+
docker compose up
13+
```

src/frontend/public/rabbit.md

Lines changed: 17 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,17 @@
1-
# this is rabbit
2-
3-
something something
4-
5-
## sub heading 1
6-
7-
1. list item
8-
1. another list item
9-
10-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vitae condimentum metus, a pretium lacus. Nam pulvinar tempus fermentum. Nam dapibus elit nec finibus scelerisque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vivamus egestas, tellus luctus lobortis sollicitudin, tellus odio sodales ex, et facilisis tortor magna ut ipsum. Vivamus risus quam, scelerisque aliquam quam quis, volutpat fringilla velit. Praesent a metus eget nibh suscipit ultricies. Vivamus non est ligula. Aliquam eget condimentum mauris. Vestibulum vitae venenatis massa, quis dictum mauris. Pellentesque blandit lacus sapien, sed sodales massa interdum non. Aenean porta, tortor a laoreet vehicula, leo orci gravida magna, in tincidunt lectus mauris malesuada leo. Cras tempor est quis neque tristique, eu tincidunt sapien faucibus. Phasellus eget maximus diam. Nam suscipit purus ac laoreet ullamcorper. Ut dapibus sit amet dui sit amet fermentum.
11-
12-
Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed mi eros, imperdiet ut massa eu, fermentum sollicitudin sem. Nulla a aliquam dolor, eu eleifend elit. Nulla viverra ullamcorper lacinia. Morbi efficitur, ex sit amet volutpat gravida, tortor sapien tempus magna, vel accumsan justo libero sed mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean ac dapibus odio.
13-
14-
Sed at pharetra risus. Vivamus sed nunc rhoncus, tincidunt orci ut, sagittis tellus. Suspendisse auctor congue dui eget dictum. Fusce vitae ipsum in sem sollicitudin sodales et at massa. Maecenas quis gravida lacus. Nulla eu suscipit dolor. Donec molestie eget dolor at rutrum. Vivamus urna tortor, venenatis eu urna vel, sagittis fringilla tellus. Phasellus a libero in turpis vulputate pretium.
15-
16-
Phasellus arcu est, bibendum quis facilisis quis, feugiat vitae dolor. Quisque dapibus, nibh at pharetra consectetur, dolor eros mattis eros, ac tincidunt urna neque sit amet tellus. Phasellus tortor mi, varius cursus est posuere, convallis iaculis ante. Cras rhoncus elementum ullamcorper. Interdum et malesuada fames ac ante ipsum primis in faucibus. In sit amet dignissim nibh. In hac habitasse platea dictumst. Integer imperdiet erat nec mi ullamcorper, in posuere tortor tincidunt. Ut non sollicitudin sem. Suspendisse vel fermentum mi, eu condimentum felis.
17-
18-
Aliquam pellentesque nulla ac neque gravida tristique. Suspendisse risus justo, suscipit ac lectus in, consectetur convallis diam. Aliquam ornare lectus odio, id auctor mi suscipit eu. Aliquam erat volutpat. Duis sed leo vitae lorem sagittis molestie. Nullam sed scelerisque urna, ac vestibulum lorem. Cras sodales sed mauris ac auctor.
19-
20-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vitae condimentum metus, a pretium lacus. Nam pulvinar tempus fermentum. Nam dapibus elit nec finibus scelerisque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vivamus egestas, tellus luctus lobortis sollicitudin, tellus odio sodales ex, et facilisis tortor magna ut ipsum. Vivamus risus quam, scelerisque aliquam quam quis, volutpat fringilla velit. Praesent a metus eget nibh suscipit ultricies. Vivamus non est ligula. Aliquam eget condimentum mauris. Vestibulum vitae venenatis massa, quis dictum mauris. Pellentesque blandit lacus sapien, sed sodales massa interdum non. Aenean porta, tortor a laoreet vehicula, leo orci gravida magna, in tincidunt lectus mauris malesuada leo. Cras tempor est quis neque tristique, eu tincidunt sapien faucibus. Phasellus eget maximus diam. Nam suscipit purus ac laoreet ullamcorper. Ut dapibus sit amet dui sit amet fermentum.
21-
22-
Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed mi eros, imperdiet ut massa eu, fermentum sollicitudin sem. Nulla a aliquam dolor, eu eleifend elit. Nulla viverra ullamcorper lacinia. Morbi efficitur, ex sit amet volutpat gravida, tortor sapien tempus magna, vel accumsan justo libero sed mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean ac dapibus odio.
23-
24-
Sed at pharetra risus. Vivamus sed nunc rhoncus, tincidunt orci ut, sagittis tellus. Suspendisse auctor congue dui eget dictum. Fusce vitae ipsum in sem sollicitudin sodales et at massa. Maecenas quis gravida lacus. Nulla eu suscipit dolor. Donec molestie eget dolor at rutrum. Vivamus urna tortor, venenatis eu urna vel, sagittis fringilla tellus. Phasellus a libero in turpis vulputate pretium.
25-
26-
Phasellus arcu est, bibendum quis facilisis quis, feugiat vitae dolor. Quisque dapibus, nibh at pharetra consectetur, dolor eros mattis eros, ac tincidunt urna neque sit amet tellus. Phasellus tortor mi, varius cursus est posuere, convallis iaculis ante. Cras rhoncus elementum ullamcorper. Interdum et malesuada fames ac ante ipsum primis in faucibus. In sit amet dignissim nibh. In hac habitasse platea dictumst. Integer imperdiet erat nec mi ullamcorper, in posuere tortor tincidunt. Ut non sollicitudin sem. Suspendisse vel fermentum mi, eu condimentum felis.
27-
28-
Aliquam pellentesque nulla ac neque gravida tristique. Suspendisse risus justo, suscipit ac lectus in, consectetur convallis diam. Aliquam ornare lectus odio, id auctor mi suscipit eu. Aliquam erat volutpat. Duis sed leo vitae lorem sagittis molestie. Nullam sed scelerisque urna, ac vestibulum lorem. Cras sodales sed mauris ac auctor.
1+
# RabbitMQ
2+
3+
##
4+
5+
1. Open this rabbit.env file and provide the right ports for your RabbitMQ instance
6+
- If you have your own instance running in docker:
7+
- If you have your own standalone RabbitMq instance
8+
2. Paste the code below to make sure you have your container ready.
9+
`//your docker stuff here`
10+
3. provide the list of queues you want to monitor by editing the `queues.txt` file. RabbitMq is case-sensitive so make sure the names are exact. e.g. `myqueue_error`
11+
4. Open a CLI of preference and run these commands:
12+
13+
```cmd
14+
// Your code goes here
15+
docker compose down
16+
docker compose up
17+
```

src/frontend/src/App.vue

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const tab = ref("showcase");
1111
</script>
1212

1313
<template>
14-
<h1>Mass Transit message retry showcase</h1>
14+
<h1>MassTransit recoverability Showcase</h1>
1515
<div class="tabs">
1616
<h5
1717
class="tab"
@@ -20,7 +20,12 @@ const tab = ref("showcase");
2020
>
2121
Showcase
2222
</h5>
23-
<h5 class="tab" :class="{ active: tab === 'tryit' }" @click="tab = 'tryit'">
23+
<h5
24+
class="tab"
25+
id="try-it"
26+
:class="{ active: tab === 'tryit' }"
27+
@click="tab = 'tryit'"
28+
>
2429
Try retries with <i>your</i> system
2530
</h5>
2631
</div>
@@ -38,7 +43,7 @@ const tab = ref("showcase");
3843
<div v-show="tab === 'tryit'"><TryItOut /></div>
3944
<floating-button
4045
text="Any issues? Ping us"
41-
location="https://discuss.particular.net"
46+
location="https://discuss.particular.net/tag/masstransit"
4247
/>
4348
</div>
4449
</template>

src/frontend/src/components/FloatingButton.vue

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,19 @@ defineProps<{
44
text: string;
55
location?: string;
66
}>();
7-
8-
async function pingUs() {
9-
try {
10-
GA4.pingUsButton();
11-
} catch (e) {
12-
console.error(e);
13-
}
14-
}
157
</script>
168

179
<template>
18-
<a v-if="location" target="_blank" :href="location">
19-
<button class="floating-button" @click="$emit('click')">
20-
<span>{{ text }}</span>
21-
</button>
10+
<a class="floating-button" v-if="location" target="_blank" :href="location">
11+
<span @click="$emit('click')">
12+
{{ text }}
13+
</span>
2214
</a>
23-
<button v-else class="floating-button" @click="$emit('click')">
24-
<span>{{ text }}</span>
25-
</button>
2615
</template>
2716

2817
<style scoped>
2918
/* Floating Button Styling */
30-
.floating-button {
19+
a.floating-button {
3120
position: fixed;
3221
bottom: 20px;
3322
right: 20px;
@@ -47,14 +36,14 @@ async function pingUs() {
4736
}
4837
4938
/* Hover Effect */
50-
.floating-button:hover {
39+
a.floating-button:hover {
5140
background-color: #00729c; /* Slightly darker blue */
5241
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
5342
transform: scale(1.05);
5443
}
5544
5645
/* Active (Pressed) Effect */
57-
.floating-button:active {
46+
a.floating-button:active {
5847
background-color: #01445c; /* Even darker blue */
5948
transform: scale(0.95);
6049
}

src/frontend/src/components/SalesEndpoint.vue

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -79,21 +79,7 @@ function toggleFailOnRetries() {
7979
<div class="endpoint-header">
8080
<div>
8181
<EndpointHeader label="Sales" :state="state" />
82-
<!-- <div class="counter-info">
83-
<span>
84-
{{ processedCount }} messages processed /
85-
<span class="red"> {{ erroredCount }} errored</span>
86-
</span>
87-
</div> -->
8882
</div>
89-
<!-- <div>
90-
<OnOffSwitch
91-
id="failOnRetriesSales"
92-
label="Fail Retries"
93-
@toggle="toggleFailOnRetries"
94-
:value="shouldFailRetries"
95-
/>
96-
</div> -->
9783
</div>
9884
<MessageContainer :messages="messages" v-slot="{ message }">
9985
<span>{{ message.timestamp.toLocaleTimeString() }}</span>

0 commit comments

Comments
 (0)