akshayrai closed pull request #3527: [TE] Attempt to organize and cleanup the
email template
URL: https://github.com/apache/incubator-pinot/pull/3527
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git
a/thirdeye/thirdeye-pinot/src/main/java/com/linkedin/thirdeye/detection/alert/scheme/DetectionEmailAlerter.java
b/thirdeye/thirdeye-pinot/src/main/java/com/linkedin/thirdeye/detection/alert/scheme/DetectionEmailAlerter.java
index 6e100d2f6d..a956b9042c 100644
---
a/thirdeye/thirdeye-pinot/src/main/java/com/linkedin/thirdeye/detection/alert/scheme/DetectionEmailAlerter.java
+++
b/thirdeye/thirdeye-pinot/src/main/java/com/linkedin/thirdeye/detection/alert/scheme/DetectionEmailAlerter.java
@@ -146,7 +146,7 @@ private void sendEmail(DetectionAlertFilterRecipients
recipients, Set<MergedAnom
HtmlEmail email = emailEntity.getContent();
email.setFrom(this.config.getFrom());
email.setTo(AlertUtils.toAddress(recipients.getTo()));
- email.setSubject(email.getSubject());
+ email.setSubject(emailEntity.getSubject());
if (CollectionUtils.isNotEmpty(recipients.getCc())) {
email.setCc(AlertUtils.toAddress(recipients.getCc()));
}
diff --git
a/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/holiday-anomaly-report.ftl
b/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/holiday-anomaly-report.ftl
index f1a519fea0..8a2c600303 100644
---
a/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/holiday-anomaly-report.ftl
+++
b/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/holiday-anomaly-report.ftl
@@ -5,22 +5,22 @@
</head>
<body style="background-color: #EDF0F3;">
-<table border="0" cellpadding="0" cellspacing="0" width="100%"
style="width:100%; font-family: 'Proxima Nova','Arial', 'Helvetica
Neue',Helvetica, sans-serif;font-size:16px;line-height:normal;margin:0 auto;
max-width: 700px; background-color: #F3F6F8; margin: 0 auto;">
- <tr style="background-color: #F3F6F8;">
- <td align="left" style="padding: 12px 24px; height: 60px;
background-color: #F6F8FA;" colspan="2">
+<table border="0" cellpadding="0" cellspacing="0" colspan="2"
style="width:100%; font-family: 'Proxima Nova','Arial','Helvetica
Neue',Helvetica,sans-serif; font-size:14px; line-height:normal; margin:0 auto;
max-width: 65%; background-color: #F3F6F8;">
+ <tr>
+ <td align="left" style="padding: 12px;">
<img width="35" height="35" alt="logo"
src="https://static.licdn-ei.com/scds/common/u/images/email/logos/logo_shift_inbug_82x82_v1.png"
- style="vertical-align: middle; display: inline-block; margin-right:
8px; background: white;">
+ style="vertical-align: middle; display: inline-block; background:
white;">
<span style="color: rgba(0,0,0,0.75);font-size: 18px; font-weight: bold;
letter-spacing: 2px; display: inline-block;vertical-align:
middle;">THIRDEYE</span>
</td>
</tr>
<tr>
<td>
- <table border="0" cellpadding="0" cellspacing="0" width="100%"
style="background-color:white; border:1px solid #E9E9E9; border-radius: 2px;
width: 100%;">
+ <table border="0" cellpadding="0" cellspacing="0" style="border:1px
solid #E9E9E9; border-radius: 2px; width: 100%;">
<tr>
- <td style="padding: 32px; background-color: #0073B1; color: #FFF;
text-align: center" colspan="2">
- <h2 style="margin-bottom: 12px;">ACTION REQUIRED</h2>
- <p style="font-size: 14px; margin-bottom: 12px;">
+ <td style="padding: 12px; background-color: #0073B1; color: #FFF;
text-align: center;">
+ <h2>ACTION REQUIRED</h2>
+ <p>
<#if anomalyCount == 1>
<strong>An anomaly</strong> was detected between
<strong>${startTime} and ${endTime} (${timeZone})</strong>
<#else>
@@ -32,26 +32,24 @@
on metrics
</#if>
<#list metricsMap?keys as id>
- <strong><a style="color: white;"
href="${dashboardHost}/app/#/rootcause?metricId=${id}">${metricsMap[id].name}</a></strong><#sep>,
</#sep>
+ <div style="padding-top: 10px;">
+ <strong><a style="color: white;"
href="${dashboardHost}/app/#/rootcause?metricId=${id}">${metricsMap[id].name}</a></strong>
+ </div>
</#list>
</p>
- <p style="margin-top: 0px; font-size:14px; margin-bottom: 25px;">
+ <p>
<#if isGroupedAnomaly>
- <a style="margin-top: 0px; padding: 4px 12px; border-radius:
2px; border: 1px solid #FFF; font-size: 16px; font-weight: bold; color: white;
text-decoration: none; line-height: 32px;"
href="${dashboardHost}/thirdeye#anomalies?anomaliesSearchMode=groupId&anomalyGroupIds=${groupId}">Investigate
all in ThirdEye</a>
+ <a style="padding: 4px 12px; border-radius: 2px; border: 1px
solid #FFF; font-size: 16px; font-weight: bold; color: white; text-decoration:
none; line-height: 32px;"
href="${dashboardHost}/thirdeye#anomalies?anomaliesSearchMode=groupId&anomalyGroupIds=${groupId}">Investigate
all in ThirdEye</a>
<#else>
- <a style="margin-top: 0px; padding: 4px 12px; border-radius:
2px; border: 1px solid #FFF; font-size: 16px; font-weight: bold; color: white;
text-decoration: none; line-height: 32px;"
href="${dashboardHost}/thirdeye#anomalies?anomaliesSearchMode=id&anomalyIds=${anomalyIds}">Investigate
all in ThirdEye</a>
+ <a style="padding: 4px 12px; border-radius: 2px; border: 1px
solid #FFF; font-size: 16px; font-weight: bold; color: white; text-decoration:
none; line-height: 32px;"
href="${dashboardHost}/thirdeye#anomalies?anomaliesSearchMode=id&anomalyIds=${anomalyIds}">Investigate
all in ThirdEye</a>
</#if>
</p>
</td>
</tr>
- <tr>
- <td colspan="2" style="border-bottom: 1px solid #E9E9E9;">
- </td>
- </tr>
<#if cid?has_content>
<tr>
- <td style="padding: 24px;" colspan="2" align="center">
+ <td style="padding: 12px;" align="center">
<a
href="${anomalyDetails[0].anomalyURL}${anomalyDetails[0].anomalyId}"
target="_blank">
<img style="width: 70%;" src="cid:${cid}" \>
</a>
@@ -61,9 +59,9 @@
<#list metricAnomalyDetails?keys as metric>
<@utils.addRow title="" align="left">
- <p style="margin-left: 24px;">
- <span style="color: #606060; font-size: 20px; line-height:
24px; margin-right: 16px;">Metric</span>
- <span style="color: #1D1D1D; font-size: 20px; font-weight:
bold; line-height: 24px;">${metric}</span>
+ <p>
+ <span style="color: #606060; font-size: 20px;">Metric</span>
+ <span style="color: #1D1D1D; font-size: 20px; font-weight:
bold;">${metric}</span>
</p>
<#list functionAnomalyDetails?keys as function>
<#assign newTable = false>
@@ -73,27 +71,27 @@
</#if>
</#list>
<#if newTable>
- <p style="margin: 24px;">
- <span style="color: #606060; font-size: 14px; line-height:
20px; margin-right: 16px;">Alert</span>
- <a
href="${dashboardHost}/app/#/manage/alert/${functionToId[function]?string.computer}"
target="blank" style="text-decoration: none; color: #0B5EA1; font-size: 14px;
font-weight: bold; line-height: 20px;">${function}</a>
+ <p>
+ <span style="color: #606060;">Alert</span>
+ <a
href="${dashboardHost}/app/#/manage/alert/${functionToId[function]?string.computer}"
target="blank" style="text-decoration: none; color: #0B5EA1; font-weight:
bold;">${function}</a>
</p>
</#if>
<table border="0" width="100%" align="center"
style="width:100%; padding:0; margin:0; border-collapse:
collapse;text-align:left;">
<#list functionAnomalyDetails[function] as anomaly>
<#if anomaly.metric==metric>
<#if newTable>
- <tr style="background-color: #F6F8FA; border-top:
2px solid #C7D1D8; border-bottom: 2px solid #C7D1D8;">
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px;">Start / Duration</th>
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px;">Dimensions</th>
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px;">Current</th>
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px;">Predicted</th>
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px; display: none;">Wow</th>
- <th style="padding: 4px 24px; font-size: 12px;
font-weight: bold; line-height: 20px; display: none;">Wo2W</th>
+ <tr style="text-align:center; background-color:
#F6F8FA; border-top: 2px solid #C7D1D8; border-bottom: 2px solid #C7D1D8;">
+ <th style="text-align:left; padding: 6px 12px;
font-size: 12px; font-weight: bold; line-height: 20px;">Start / Duration</th>
+ <th style="padding: 6px 12px; font-size: 12px;
font-weight: bold; line-height: 20px;">Dimensions</th>
+ <th style="padding: 6px 12px; font-size: 12px;
font-weight: bold; line-height: 20px;">Current</th>
+ <th style="padding: 6px 12px; font-size: 12px;
font-weight: bold; line-height: 20px;">Predicted</th>
+ <th style="padding: 6px 12px; font-size: 12px;
font-weight: bold; line-height: 20px; display: none;">Wow</th>
+ <th style="padding: 6px 12px; font-size: 12px;
font-weight: bold; line-height: 20px; display: none;">Wo2W</th>
</tr>
</#if>
<#assign newTable = false>
<tr style="border-bottom: 1px solid #C7D1D8;">
- <td style="padding: 14px 24px;white-space: nowrap;">
+ <td style="padding: 6px 12px;white-space: nowrap;">
<a style="font-weight: bold; text-decoration:
none; font-size:14px; line-height:20px; color: #0073B1;"
href="${anomaly.anomalyURL}${anomaly.anomalyId}"
target="_blank">${anomaly.startDateTime}
${anomaly.timezone}</a>
<div style="color: rgba(0,0,0,0.6);
font-size:12px; line-height:16px;">${anomaly.duration}</div>
@@ -121,7 +119,7 @@
<@utils.addRow title="Useful Links" align="left">
<#list referenceLinks?keys as referenceLinkKey>
<div style="padding-top: 16px;">
- <a href="${referenceLinks[referenceLinkKey]}"
style="text-decoration: none; color:#0073B1; font-size:14px; font-weight:bold;
line-height:20px; margin-bottom: 0;">${referenceLinkKey}</a>
+ <a href="${referenceLinks[referenceLinkKey]}"
style="padding-left: 16px; font-weight: bold; text-decoration: none;
color:#0073B1;">${referenceLinkKey}</a>
</div>
</#list>
</@utils.addRow>
@@ -129,21 +127,21 @@
<#if holidays?has_content>
<@utils.addRow title="Holidays" align="left">
- <table border="0" width="100%" align="center" style="width:100%;
padding:0; margin:0; border-collapse: collapse; text-align:left;">
+ <table border="0" align="center" style="table-layout: fixed;
width:100%; padding:0; margin:0; border-collapse: collapse; text-align:left;">
<#list holidays as holiday>
- <tr style="border-bottom: 1px solid #C7D1D8;">
+ <tr style="border-bottom: 1px solid #C7D1D8; padding-top:
16px;">
- <td style="padding:14px 24px;">
- <a
href="https://www.google.com/search?q=${holiday.name}" style="text-decoration:
none; white-space:nowrap; color:#0073B1; font-size:14px;
font-weight:bold;">${holiday.name}</a>
+ <td>
+ <a
href="https://www.google.com/search?q=${holiday.name}" style="text-decoration:
none; color:#0073B1; font-size:12px; font-weight:bold;">${holiday.name}</a>
</td>
- <td style="padding:14px 24px;">
- <span style="white-space:nowrap; font-size: 14px;
color:#606060;">(${holiday.startTime?number_to_date})</span>
+ <td>
+ <span style="font-size: 12px;
color:#606060;">(${holiday.startTime?number_to_date})</span>
</td>
<#if holiday.targetDimensionMap["countryCode"]??>
- <td style="padding:14px 24px;">
- <span style="white-space:nowrap; color:
rgba(0,0,0,0.6); font-size:
12px;">${holiday.targetDimensionMap["countryCode"]?join(", ")}</span>
+ <td>
+ <span style="color: rgba(0,0,0,0.6); font-size:
12px;">${holiday.targetDimensionMap["countryCode"]?join(", ")}</span>
</td>
</#if>
@@ -154,13 +152,7 @@
</#if>
<tr>
- <td colspan="2" style="border-bottom: 1px solid #E9E9E9;">
- </td>
- </tr>
-
- <tr>
- <td style="text-align: center; background-color: #EDF0F3; font-size:
12px; font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica,
sans-serif; color: #737373; padding: 24px; font-size:14px;"
- colspan="2">
+ <td style="text-align: center; background-color: #EDF0F3; font-size:
12px; font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica,
sans-serif; color: #737373; padding: 12px;">
<p style="margin-top:0;"> You are receiving this email because you
have subscribed to ThirdEye Alert Service for
<strong>${alertConfigName}</strong>.</p>
<p>
diff --git
a/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/lib/utils.ftl
b/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/lib/utils.ftl
index 020a343a7c..4667e06007 100644
---
a/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/lib/utils.ftl
+++
b/thirdeye/thirdeye-pinot/src/main/resources/com/linkedin/thirdeye/detector/lib/utils.ftl
@@ -1,6 +1,6 @@
<#macro addRow title align>
<tr>
- <td style="border-bottom: 1px solid rgba(0,0,0,0.15); padding: 24px;
font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica, sans-serif;"
colspan="2" align="${align}">
+ <td style="border-bottom: 1px solid rgba(0,0,0,0.15); padding: 24px;
align:${align}">
<#if title?has_content>
<p style="font-size:20px; line-height:24px; color:#1D1D1D;
font-weight: 500; margin:0; padding:0;">${title}</p>
</#if>
diff --git
a/thirdeye/thirdeye-pinot/src/test/resources/test-multiple-anomalies-email-content-formatter.html
b/thirdeye/thirdeye-pinot/src/test/resources/test-multiple-anomalies-email-content-formatter.html
index 63a08cbcba..66925ac21a 100644
---
a/thirdeye/thirdeye-pinot/src/test/resources/test-multiple-anomalies-email-content-formatter.html
+++
b/thirdeye/thirdeye-pinot/src/test/resources/test-multiple-anomalies-email-content-formatter.html
@@ -3,56 +3,54 @@
</head>
<body style="background-color: #EDF0F3;">
-<table border="0" cellpadding="0" cellspacing="0" width="100%"
style="width:100%; font-family: 'Proxima Nova','Arial', 'Helvetica
Neue',Helvetica, sans-serif;font-size:16px;line-height:normal;margin:0 auto;
max-width: 700px; background-color: #F3F6F8; margin: 0 auto;">
- <tr style="background-color: #F3F6F8;">
- <td align="left" style="padding: 12px 24px; height: 60px;
background-color: #F6F8FA;" colspan="2">
+<table border="0" cellpadding="0" cellspacing="0" colspan="2"
style="width:100%; font-family: 'Proxima Nova','Arial','Helvetica
Neue',Helvetica,sans-serif; font-size:14px; line-height:normal; margin:0 auto;
max-width: 65%; background-color: #F3F6F8;">
+ <tr>
+ <td align="left" style="padding: 12px;">
<img width="35" height="35" alt="logo"
src="https://static.licdn-ei.com/scds/common/u/images/email/logos/logo_shift_inbug_82x82_v1.png"
- style="vertical-align: middle; display: inline-block; margin-right:
8px; background: white;">
+ style="vertical-align: middle; display: inline-block; background:
white;">
<span style="color: rgba(0,0,0,0.75);font-size: 18px; font-weight: bold;
letter-spacing: 2px; display: inline-block;vertical-align:
middle;">THIRDEYE</span>
</td>
</tr>
<tr>
<td>
- <table border="0" cellpadding="0" cellspacing="0" width="100%"
style="background-color:white; border:1px solid #E9E9E9; border-radius: 2px;
width: 100%;">
+ <table border="0" cellpadding="0" cellspacing="0" style="border:1px
solid #E9E9E9; border-radius: 2px; width: 100%;">
<tr>
- <td style="padding: 32px; background-color: #0073B1; color: #FFF;
text-align: center" colspan="2">
- <h2 style="margin-bottom: 12px;">ACTION REQUIRED</h2>
- <p style="font-size: 14px; margin-bottom: 12px;">
+ <td style="padding: 12px; background-color: #0073B1; color: #FFF;
text-align: center;">
+ <h2>ACTION REQUIRED</h2>
+ <p>
<strong>2 anomalies</strong> were detected between <strong>Nov
06, 10:00 and Nov 07, 17:00 (PDT)</strong> on metric
- <strong><a style="color: white;"
href="http://localhost:8080/dashboard/app/#/rootcause?metricId=4">test</a></strong>
+ <div style="padding-top: 10px;">
+ <strong><a style="color: white;"
href="http://localhost:8080/dashboard/app/#/rootcause?metricId=4">test</a></strong>
+ </div>
</p>
- <p style="margin-top: 0px; font-size:14px; margin-bottom: 25px;">
- <a style="margin-top: 0px; padding: 4px 12px; border-radius:
2px; border: 1px solid #FFF; font-size: 16px; font-weight: bold; color: white;
text-decoration: none; line-height: 32px;"
href="http://localhost:8080/dashboard/thirdeye#anomalies?anomaliesSearchMode=id&anomalyIds=2,3">Investigate
all in ThirdEye</a>
+ <p>
+ <a style="padding: 4px 12px; border-radius: 2px; border: 1px
solid #FFF; font-size: 16px; font-weight: bold; color: white; text-decoration:
none; line-height: 32px;"
href="http://localhost:8080/dashboard/thirdeye#anomalies?anomaliesSearchMode=id&anomalyIds=2,3">Investigate
all in ThirdEye</a>
</p>
</td>
</tr>
- <tr>
- <td colspan="2" style="border-bottom: 1px solid #E9E9E9;">
- </td>
- </tr>
<tr>
- <td style="border-bottom: 1px solid rgba(0,0,0,0.15); padding: 24px;
font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica, sans-serif;"
colspan="2" align="left">
- <p style="margin-left: 24px;">
- <span style="color: #606060; font-size: 20px; line-height: 24px;
margin-right: 16px;">Metric</span>
- <span style="color: #1D1D1D; font-size: 20px; font-weight: bold;
line-height: 24px;">test</span>
+ <td style="border-bottom: 1px solid rgba(0,0,0,0.15); padding: 24px;
align: left">
+ <p>
+ <span style="color: #606060; font-size: 20px; ">Metric</span>
+ <span style="color: #1D1D1D; font-size: 20px; font-weight:
bold;">test</span>
</p>
- <p style="margin: 24px;">
- <span style="color: #606060; font-size: 14px; line-height: 20px;
margin-right: 16px;">Alert</span>
- <a href="http://localhost:8080/dashboard/app/#/manage/alert/1"
target="blank" style="text-decoration: none; color: #0B5EA1; font-size: 14px;
font-weight: bold; line-height: 20px;">integration test function 1</a>
+ <p>
+ <span style="color: #606060;">Alert</span>
+ <a href="http://localhost:8080/dashboard/app/#/manage/alert/1"
target="blank" style="text-decoration: none; color: #0B5EA1; font-weight:
bold;">integration test function 1</a>
</p>
<table border="0" width="100%" align="center" style="width:100%;
padding:0; margin:0; border-collapse: collapse;text-align:left;">
- <tr style="background-color: #F6F8FA; border-top: 2px solid
#C7D1D8; border-bottom: 2px solid #C7D1D8;">
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px;">Start / Duration</th>
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px;">Dimensions</th>
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px;">Current</th>
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px;">Predicted</th>
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px; display: none;">Wow</th>
- <th style="padding: 4px 24px; font-size: 12px; font-weight:
bold; line-height: 20px; display: none;">Wo2W</th>
+ <tr style="text-align:center; background-color: #F6F8FA;
border-top: 2px solid #C7D1D8; border-bottom: 2px solid #C7D1D8;">
+ <th style="text-align:left; padding: 6px 12px; font-size:
12px; font-weight: bold; line-height: 20px;">Start / Duration</th>
+ <th style="padding: 6px 12px; font-size: 12px; font-weight:
bold; line-height: 20px;">Dimensions</th>
+ <th style="padding: 6px 12px; font-size: 12px; font-weight:
bold; line-height: 20px;">Current</th>
+ <th style="padding: 6px 12px; font-size: 12px; font-weight:
bold; line-height: 20px;">Predicted</th>
+ <th style="padding: 6px 12px; font-size: 12px; font-weight:
bold; line-height: 20px; display: none;">Wow</th>
+ <th style="padding: 6px 12px; font-size: 12px; font-weight:
bold; line-height: 20px; display: none;">Wo2W</th>
</tr>
<tr style="border-bottom: 1px solid #C7D1D8;">
- <td style="padding: 14px 24px;white-space: nowrap;">
+ <td style="padding: 6px 12px;white-space: nowrap;">
<a style="font-weight: bold; text-decoration: none;
font-size:14px; line-height:20px; color: #0073B1;"
href="http://localhost:8080/dashboard/app/#/rootcause?anomalyId=2"
target="_blank">Nov 06, 10:00 PDT</a>
<div style="color: rgba(0,0,0,0.6); font-size:12px;
line-height:16px;">3 hours</div>
@@ -66,7 +64,7 @@ <h2 style="margin-bottom: 12px;">ACTION REQUIRED</h2>
</td>
</tr>
<tr style="border-bottom: 1px solid #C7D1D8;">
- <td style="padding: 14px 24px;white-space: nowrap;">
+ <td style="padding: 6px 12px;white-space: nowrap;">
<a style="font-weight: bold; text-decoration: none;
font-size:14px; line-height:20px; color: #0073B1;"
href="http://localhost:8080/dashboard/app/#/rootcause?anomalyId=3"
target="_blank">Nov 07, 10:00 PDT</a>
<div style="color: rgba(0,0,0,0.6); font-size:12px;
line-height:16px;">7 hours</div>
@@ -83,16 +81,8 @@ <h2 style="margin-bottom: 12px;">ACTION REQUIRED</h2>
</td>
</tr>
-
-
- <tr>
- <td colspan="2" style="border-bottom: 1px solid #E9E9E9;">
- </td>
- </tr>
-
<tr>
- <td style="text-align: center; background-color: #EDF0F3; font-size:
12px; font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica,
sans-serif; color: #737373; padding: 24px; font-size:14px;"
- colspan="2">
+ <td style="text-align: center; background-color: #EDF0F3; font-size:
12px; font-family:'Proxima Nova','Arial', 'Helvetica Neue',Helvetica,
sans-serif; color: #737373; padding: 12px;">
<p style="margin-top:0;"> You are receiving this email because you
have subscribed to ThirdEye Alert Service for
<strong>Test Config</strong>.</p>
<p>
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]