docs: update

This commit is contained in:
tangtaoit
2023-06-18 14:14:50 +08:00
parent b98257d831
commit bb2f4dc888
14 changed files with 51 additions and 14 deletions

View File

@@ -2,5 +2,4 @@ web/dist
web/node_modules
.vscode
.VSCodeCounter
.github
.git
.github

View File

@@ -28,7 +28,14 @@ RUN go mod download
WORKDIR /go/release
ADD . .
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags='-w -extldflags "-static"' -o app main.go
# RUN CGO_ENABLED=0 GOOS=linux go build -ldflags='-w -extldflags "-static"' -o app main.go
RUN GIT_COMMIT=$(git rev-parse HEAD) && \
GIT_COMMIT_DATE=$(git log --date=iso8601-strict -1 --pretty=%ct) && \
GIT_VERSION=$(git describe --tags --abbrev=0) && \
GIT_TREE_STATE=$(test -n "`git status --porcelain`" && echo "dirty" || echo "clean") && \
CGO_ENABLED=0 GOOS=linux go build -ldflags="-w -extldflags '-static' -X main.Commit=$GIT_COMMIT -X main.CommitDate=$GIT_COMMIT_DATE -X main.Version=$GIT_VERSION -X main.TreeState=$GIT_TREE_STATE" -installsuffix cgo -o app ./main.go
FROM alpine as prod
# Import the user and group files from the builder.

View File

@@ -145,7 +145,13 @@ docker run -d -p 5001:5001 -p 5100:5100 -p 5200:5200 -p 5300:5300 -e WK_EXTERNAL
* 社区频道支持
* 支持topic模式的消息投递
## 监控截图
![image](./docs/screen1.png)
![image](./docs/screen2.png)
![image](./docs/screen3.png)
![image](./docs/screen4.png)
![image](./docs/screen5.png)
License
---------------

BIN
docs/screen1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 KiB

BIN
docs/screen2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 KiB

BIN
docs/screen3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 KiB

BIN
docs/screen4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 578 KiB

BIN
docs/screen5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 KiB

View File

@@ -189,4 +189,26 @@ export const newConversationPage = (conversationPageObj: any) => {
conversationPage.on = conversationPageObj.on
conversationPage.conversations = conversationPageObj.conversations.map((conversationObj: any) => newConversation(conversationObj))
return conversationPage
}
export const channelTypeToString = (channelType: number) => {
if(channelType == 1) {
return "个人频道"
}
if(channelType == 2) {
return "群组频道"
}
if(channelType == 3) {
return "客服频道"
}
if (channelType == 4) {
return "社区频道"
}
if(channelType == 5) {
return "社区话题频道"
}
if(channelType == 6) {
return "资讯频道"
}
return `${channelType}`
}

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import APIClient from '@/services/APIClient';
import { ChannelInfo, newChannelInfo } from '@/services/Model';
import { ChannelInfo, channelTypeToString, newChannelInfo } from '@/services/Model';
import { ref } from 'vue';
const channelInfos = ref<Array<ChannelInfo>>([])
@@ -74,7 +74,7 @@ const onSearch = () => {
</tr>
<tr v-for="channelInfo in channelInfos">
<td>{{ channelInfo.channelID }}</td>
<td>{{ channelInfo.channelType }}</td>
<td>{{ channelTypeToString(channelInfo.channelType) }}</td>
<td>{{ channelInfo.subscribers }}</td>
<td>{{ channelInfo.denyList || '无' }}</td>
<td>{{ channelInfo.allowList || '无' }}</td>

View File

@@ -2,6 +2,7 @@
<script setup lang="ts">
import APIClient from '@/services/APIClient';
import { Connz, newConnz } from '@/services/Model';
import { formatMemory } from '@/services/Utils';
import { onBeforeUnmount, onMounted, ref } from 'vue';
const connz = ref<Connz>(new Connz())
@@ -92,11 +93,11 @@ const onSort = (s: string) => {
<tr v-for="conn in connz.connections">
<td>{{ conn.id }}</td>
<td>{{ conn.uid }}</td>
<td>{{ conn.inMsgs }}</td>
<td>{{ conn.outMsgs }}</td>
<td>{{ conn.inBytes }}</td>
<td>{{ conn.outBytes }}</td>
<td>{{ conn.pendingBytes }}</td>
<td>{{ formatMemory(conn.inMsgs) }}</td>
<td>{{ formatMemory(conn.outMsgs) }}</td>
<td>{{ formatMemory(conn.inBytes) }}</td>
<td>{{ formatMemory(conn.outBytes) }}</td>
<td>{{ formatMemory(conn.pendingBytes) }}</td>
<td>{{ conn.ip }}:{{ conn.port }}</td>
<td>{{ conn.uptime }}</td>
<td>{{ conn.idle }}</td>

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import APIClient from '@/services/APIClient';
import { newConversationPage, type ConversationPage } from '@/services/Model';
import { newConversationPage, ConversationPage,channelTypeToString } from '@/services/Model';
import { ref } from 'vue';
@@ -60,7 +60,7 @@ const onSearch = () => {
</tr>
<tr v-if="conversationPage?.on" v-for="conversation in conversationPage?.conversations">
<td>{{ conversation.channelID }}</td>
<td>{{ conversation.channelType }}</td>
<td>{{ channelTypeToString(conversation.channelType) }}</td>
<td>{{ conversation.lastMsgSeq }}</td>
<td>{{ conversation.lastClientMsgNo }}</td>
<td>{{ conversation.timestamp }}</td>

View File

@@ -115,6 +115,7 @@ onBeforeUnmount(() => {
<th>发出消息</th>
<th>收到字节数</th>
<th>发出字节数</th>
<th>待发送字节</th>
<th>连接地址</th>
<th>存活时间</th>
<th>空闲时间</th>
@@ -132,6 +133,7 @@ onBeforeUnmount(() => {
<td>{{ formatNumber(conn.outMsgs) }}</td>
<td>{{ formatMemory(conn.inBytes) }}</td>
<td>{{ formatMemory(conn.outBytes) }}</td>
<td>{{ formatMemory(conn.pendingBytes) }}</td>
<td>{{ conn.ip }}:{{ conn.port }}</td>
<td>{{ conn.uptime }}</td>
<td>{{ conn.idle }}</td>

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import APIClient from '@/services/APIClient';
import { newMessage, type Message, MessagePage, newMessagePage } from '@/services/Model';
import { newMessage, type Message, MessagePage, newMessagePage, channelTypeToString } from '@/services/Model';
import { ref } from 'vue';
import { Buffer } from 'buffer';
@@ -105,7 +105,7 @@ const onNextPage = () => {
<td>{{ message.clientMsgNo }}</td>
<td>{{ message.fromUID }}</td>
<td>{{ message.channelID }}</td>
<td>{{ message.channelType }}</td>
<td>{{ channelTypeToString(message.channelType) }}</td>
<td>{{ message.timestamp }}</td>
</tr>
</tbody>