private String getRequestBody(FeishuSettings.WebHookUrl webHookUrl, AlarmMessage alarmMessage, String textTemplate) {
        final var requestBody = String.format(textTemplate, alarmMessage.getAlarmMessage()
        );
        final var gson = new Gson();
        final var jsonObject = gson.fromJson(requestBody, JsonObject.class);
        final var content = buildContent(jsonObject);
        if (!StringUtil.isBlank(webHookUrl.getSecret())) {
            final var timestamp = System.currentTimeMillis() / 1000;
            content.put("timestamp", timestamp);
            try {
                content.put("sign", sign(timestamp, webHookUrl.getSecret()));
            } catch (NoSuchAlgorithmException | InvalidKeyException e) {
                throw new RuntimeException(e);
            }
        }
        return gson.toJson(content);
    }
deal requestBody,if it has sign set the sign
oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/feishu/FeishuHookCallback.java