Azure Monitoring

Azure Monitoring

Modern visibility into Azure services and on-premises infrastructure in a single platform.

Keep Azure migrations on track and modernize workloads by observing resource health, performance, and availability across hybrid environments.

Carrier logo
Carrier logo

 

 

75%

Fewer tickets

Reduced ticket volume

Provide better customer experiences by correlating related issues.

 
83%

Less tools

Fewer monitoring tools

Clear insights for ops teams with one monitoring platform.

 
80%

Faster MTTR

Rapid troubleshooting

Resolve issues faster with logs, metrics, and traces in one platform.

 
40%

Time savings

Automated insights

Free up time by unlocking log insights for users of all levels to reduce escalations or war rooms.

 

.four-column-content {
background-color: var(–bg-color);
padding-block: 60px;
}

.four-column-content__header {
text-align: left;
margin-bottom: 66px;
}

.four-column-content__header__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.four-column-content__header__title {
color: var(–title-color);
font-size: 64px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 23px;
}

.four-column-content__header__content {
margin: 0;
}

.four-column-content__header__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.four-column-content__columns__wrap + .four-column-content__columns__wrap {
margin-top: 0;
}

.four-column-content__col {
background: var(–col-bg-color);
border-radius: 14px;
display: flex;
flex-direction: column;
padding: 39px 34px 35px;
height: 100%;
}

.four-column-content__col__icon__wrap {
width: auto;
max-height: 120px;
margin-bottom: 0px;
}

.four-column-content__col__icon__wrap > img {
width: auto;
height: 100%;
}

.four-column-content__col__eyebrow {
color: var(–col-eyebrow-color);
font-size: 14px;
font-weight: 400;
line-height: 1.5;
letter-spacing: 0.1em;
margin-bottom: 18px;
text-transform: uppercase;
}

.four-column-content__col__title {
color: var(–col-title-color);
font-size: 28px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 18px;
}

.four-column-content__col__content a {
color: var(–col-link-color);
}

.four-column-content__col__content a:hover {
color: var(–col-link-hover-color);
}

.four-column-content__col__content > * {
color: var(–col-text-color);
font-size: 16px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.four-column-content__col__ctas {
margin-top: 18px;
}

.four-column-content__col__ctas .button {
color: var(–col-link-color, var(–link-color));
border-color: var(–col-link-color, var(–link-color));
font-family: “Sharp Grotesk Alt”, sans-serif;
font-size: 14px;
letter-spacing: 0.1em;
padding-bottom: 10px;
}

.four-column-content__col__ctas .button:hover {
color: var(–col-link-hover-color, var(–link-hover-color));
border-color: var(–col-link-hover-color, var(–link-hover-color));
}

.four-column-content__header__content > *:last-child {
margin-bottom: 0;
}

.four-column-content__col__content > *:last-child {
margin-bottom: 0;
}

:not(.four-column-content__plain) > .four-column-content__col__eyebrow {
margin-top: 30px;
}

@media (min-width: 1201px) and (max-width: 1399px) {
.four-column-content__col__title {
font-size: 24px;
}
}

@media (min-width: 992px) and (max-width: 1200px) {
.four-column-content__col__title {
font-size: 20px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic four-column-content-block_e16c9461cccff04966ffa89ab20d9e7d
* magic word so the block knows where to use the actual id. */

#four-column-content-block_e16c9461cccff04966ffa89ab20d9e7d {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #040f4b;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–button-text-color: #040f4b;
–button-bg-color: #fff;
–button-border-color: #040f4b;
–button-text-hover-color: #1a31ff;
–button-bg-hover-color: #fff;
–button-border-hover-color: #1a31ff;
}
/* On this color palette for the cloud-dark column */

.four-column-content__cloud-dark {
–col-bg-color:
linear-gradient(202.73deg, #040f4b 69.9%, #7aecf3 101.93%),
#040f4b;
–col-eyebrow-color: #fff;
–col-title-color: #fff;
–col-text-color: #fff;
–col-link-color: #e8ff26;
–col-link-hover-color: #e8ff26;
}
/* On this color palette for the cloud-dark column */

.four-column-content__cloud-dark {
–col-bg-color:
linear-gradient(202.73deg, #040f4b 69.9%, #7aecf3 101.93%),
#040f4b;
–col-eyebrow-color: #fff;
–col-title-color: #fff;
–col-text-color: #fff;
–col-link-color: #e8ff26;
–col-link-hover-color: #e8ff26;
}
/* On this color palette for the cloud-dark column */

.four-column-content__cloud-dark {
–col-bg-color:
linear-gradient(202.73deg, #040f4b 69.9%, #7aecf3 101.93%),
#040f4b;
–col-eyebrow-color: #fff;
–col-title-color: #fff;
–col-text-color: #fff;
–col-link-color: #e8ff26;
–col-link-hover-color: #e8ff26;
}
/* On this color palette for the cloud-dark column */

.four-column-content__cloud-dark {
–col-bg-color:
linear-gradient(202.73deg, #040f4b 69.9%, #7aecf3 101.93%),
#040f4b;
–col-eyebrow-color: #fff;
–col-title-color: #fff;
–col-text-color: #fff;
–col-link-color: #e8ff26;
–col-link-hover-color: #e8ff26;
}

AzureLP_Hybrid observability for Azure workloads

Hybrid observability for Azure workloads

  • Hybrid monitoring coverage over critical Azure services alongside on-premises, multi-cloud, and Kubernetes environments in a single unified platform
  • Connect into Azure Monitor metrics and discover resources with agentless collection and skip manual configuration
  • Visibility into Azure availability, OS, and application level metrics for insights into underlying cloud infrastructure health to predict service availability
  • See the performance and availability of your business services with logical relationship mapping between resources

.content-media-50-50 {
background-color: var(–bg-color);
padding-block: 60px;
}

.content-media-50-50 a:not(.lm-refresh-button) {
color: var(–link-color);
}

.content-media-50-50__row:not(:last-child) {
padding-bottom: 120px;
}

.content-media-50-50__content {
text-align: left;
margin-bottom: 38px;
}

.content-media-50-50__content__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.content-media-50-50__content__title {
color: var(–title-color);
font-size: 32px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 0;
}

.content-media-50-50__content__content {
margin-top: 40px;
}

.content-media-50-50__content__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.content-media-50-50__content__content ul li,
.content-media-50-50__content__content ol li {
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.content-media-50-50__content__content > *:last-child {
margin-bottom: 0;
}

.content-media-50-50__ctas {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 30px;
}

.content-media-50-50__ctas .button {
border-radius: 10px;
font-size: 14px;
line-height: 18px;
letter-spacing: 0.1em;
padding: 16px 32px;
transition:
color 0.25s ease-out,
background-color 0.25s ease-out,
border-color 0.25s ease-out;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary {
border-color: var(–button-primary-border-color) !important;
background-color: var(–button-primary-bg-color) !important;
color: var(–button-primary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary {
border-color: var(–button-secondary-border-color) !important;
background-color: var(–button-secondary-bg-color) !important;
color: var(–button-secondary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary:hover {
border-color: var(–button-primary-hover-border-color) !important;
background-color: var(–button-primary-hover-bg-color) !important;
color: var(–button-primary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary:hover {
border-color: var(–button-secondary-hover-border-color) !important;
background-color: var(–button-secondary-hover-bg-color) !important;
color: var(–button-secondary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

@media (min-width: 992px) {
.content-media-50-50__content__title {
font-size: 46px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic content-media-50-50-block_3f49aa1ca82914374b1631ffe06de9a1
* magic word so the block knows where to use the actual id. */

#content-media-50-50-block_3f49aa1ca82914374b1631ffe06de9a1 {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #414042;
–icon-color: #1a31ff;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–border-color: #d9d9d9;
–button-primary-border-color: #1a31ff;
–button-primary-bg-color: #1a31ff;
–button-primary-text-color: #fff;
–button-primary-hover-border-color: #040f4b;
–button-primary-hover-bg-color: #040f4b;
–button-primary-hover-text-color: #fff;
–button-secondary-border-color: #1a31ff;
–button-secondary-bg-color: transparent;
–button-secondary-text-color: #1a31ff;
–button-secondary-hover-border-color: #040f4b;
–button-secondary-hover-bg-color: transparent;
–button-secondary-hover-text-color: #040f4b;
}
/* These are the styles specific in case the user adds an image to the block */

.content-media-50-50__image__wrap {
padding-bottom: 25px;
}

.content-media-50-50__image__wrap > img {
max-width: 100%;
height: auto;
}

Confidently migrate to Azure and observe performance

  • Automatically discover and monitor critical Azure services like Virtual Machines, Storage Account, Azure Kubernetes Service (AKS), Cognitive Services and more in real-time
  • Make sure migrated and refactored resources work correctly in Azure to minimize service disruptions
  • Pre-built, out-of-the-box dashboards help you monitor AWS resources quickly and easily
  • LogicMonitor helps plan for migrations with 1-year forecasts into future workload metrics to predict migrated resource requirements and safe fail-over limits
AzureLP_Confidently migrate to Azure and observe performance

.content-media-50-50 {
background-color: var(–bg-color);
padding-block: 60px;
}

.content-media-50-50 a:not(.lm-refresh-button) {
color: var(–link-color);
}

.content-media-50-50__row:not(:last-child) {
padding-bottom: 120px;
}

.content-media-50-50__content {
text-align: left;
margin-bottom: 38px;
}

.content-media-50-50__content__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.content-media-50-50__content__title {
color: var(–title-color);
font-size: 32px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 0;
}

.content-media-50-50__content__content {
margin-top: 40px;
}

.content-media-50-50__content__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.content-media-50-50__content__content ul li,
.content-media-50-50__content__content ol li {
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.content-media-50-50__content__content > *:last-child {
margin-bottom: 0;
}

.content-media-50-50__ctas {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 30px;
}

.content-media-50-50__ctas .button {
border-radius: 10px;
font-size: 14px;
line-height: 18px;
letter-spacing: 0.1em;
padding: 16px 32px;
transition:
color 0.25s ease-out,
background-color 0.25s ease-out,
border-color 0.25s ease-out;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary {
border-color: var(–button-primary-border-color) !important;
background-color: var(–button-primary-bg-color) !important;
color: var(–button-primary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary {
border-color: var(–button-secondary-border-color) !important;
background-color: var(–button-secondary-bg-color) !important;
color: var(–button-secondary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary:hover {
border-color: var(–button-primary-hover-border-color) !important;
background-color: var(–button-primary-hover-bg-color) !important;
color: var(–button-primary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary:hover {
border-color: var(–button-secondary-hover-border-color) !important;
background-color: var(–button-secondary-hover-bg-color) !important;
color: var(–button-secondary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

@media (min-width: 992px) {
.content-media-50-50__content__title {
font-size: 46px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic content-media-50-50-block_a0e57b2be971bf60193e879030040bd9
* magic word so the block knows where to use the actual id. */

#content-media-50-50-block_a0e57b2be971bf60193e879030040bd9 {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #414042;
–icon-color: #1a31ff;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–border-color: #d9d9d9;
–button-primary-border-color: #1a31ff;
–button-primary-bg-color: #1a31ff;
–button-primary-text-color: #fff;
–button-primary-hover-border-color: #040f4b;
–button-primary-hover-bg-color: #040f4b;
–button-primary-hover-text-color: #fff;
–button-secondary-border-color: #1a31ff;
–button-secondary-bg-color: transparent;
–button-secondary-text-color: #1a31ff;
–button-secondary-hover-border-color: #040f4b;
–button-secondary-hover-bg-color: transparent;
–button-secondary-hover-text-color: #040f4b;
}
/* These are the styles specific in case the user adds an image to the block */

.content-media-50-50__image__wrap {
padding-bottom: 25px;
}

.content-media-50-50__image__wrap > img {
max-width: 100%;
height: auto;
}

AzureLP_Innovate with Layered AI

Innovate with Layered AI

  • Act on alerts faster with dynamic thresholds and anomaly detection to easily identify issues and prioritize troubleshooting
  • Confidently accelerate your AI projects with monitoring of your Azure OpenAI and Cognitive Services
  • Quickly respond to incidents with Edwin AI, and use incident summaries, root cause analysis, and resolution guidance to empowers IT teams
  • Edwin AI accelerates cross-domain incident resolution with support workflows across ITOps, SecOps, DevOps, and more

.content-media-50-50 {
background-color: var(–bg-color);
padding-block: 60px;
}

.content-media-50-50 a:not(.lm-refresh-button) {
color: var(–link-color);
}

.content-media-50-50__row:not(:last-child) {
padding-bottom: 120px;
}

.content-media-50-50__content {
text-align: left;
margin-bottom: 38px;
}

.content-media-50-50__content__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.content-media-50-50__content__title {
color: var(–title-color);
font-size: 32px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 0;
}

.content-media-50-50__content__content {
margin-top: 40px;
}

.content-media-50-50__content__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.content-media-50-50__content__content ul li,
.content-media-50-50__content__content ol li {
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.content-media-50-50__content__content > *:last-child {
margin-bottom: 0;
}

.content-media-50-50__ctas {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 30px;
}

.content-media-50-50__ctas .button {
border-radius: 10px;
font-size: 14px;
line-height: 18px;
letter-spacing: 0.1em;
padding: 16px 32px;
transition:
color 0.25s ease-out,
background-color 0.25s ease-out,
border-color 0.25s ease-out;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary {
border-color: var(–button-primary-border-color) !important;
background-color: var(–button-primary-bg-color) !important;
color: var(–button-primary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary {
border-color: var(–button-secondary-border-color) !important;
background-color: var(–button-secondary-bg-color) !important;
color: var(–button-secondary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary:hover {
border-color: var(–button-primary-hover-border-color) !important;
background-color: var(–button-primary-hover-bg-color) !important;
color: var(–button-primary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary:hover {
border-color: var(–button-secondary-hover-border-color) !important;
background-color: var(–button-secondary-hover-bg-color) !important;
color: var(–button-secondary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

@media (min-width: 992px) {
.content-media-50-50__content__title {
font-size: 46px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic content-media-50-50-block_0486ff2b0c96361f730b4c099a8063cf
* magic word so the block knows where to use the actual id. */

#content-media-50-50-block_0486ff2b0c96361f730b4c099a8063cf {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #414042;
–icon-color: #1a31ff;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–border-color: #d9d9d9;
–button-primary-border-color: #1a31ff;
–button-primary-bg-color: #1a31ff;
–button-primary-text-color: #fff;
–button-primary-hover-border-color: #040f4b;
–button-primary-hover-bg-color: #040f4b;
–button-primary-hover-text-color: #fff;
–button-secondary-border-color: #1a31ff;
–button-secondary-bg-color: transparent;
–button-secondary-text-color: #1a31ff;
–button-secondary-hover-border-color: #040f4b;
–button-secondary-hover-bg-color: transparent;
–button-secondary-hover-text-color: #040f4b;
}
/* These are the styles specific in case the user adds an image to the block */

.content-media-50-50__image__wrap {
padding-bottom: 25px;
}

.content-media-50-50__image__wrap > img {
max-width: 100%;
height: auto;
}

Manage Azure costs and maintain performance

  • Deliver highly available and efficient services and applications while managing Azure costs
  • Easily interpret Azure cost trends to know where, when, and why cloud billing changes occurred
  • Get the most out of Azure investments with AI-powered storage and compute recommendations to reduce costs and balance utilization (beta)
  • Explore cost change recommendations directly in your Azure portal to immediately take action with supporting observability data (beta)
AWS_LP_Manage Azure costs and maintain performance

.content-media-50-50 {
background-color: var(–bg-color);
padding-block: 60px;
}

.content-media-50-50 a:not(.lm-refresh-button) {
color: var(–link-color);
}

.content-media-50-50__row:not(:last-child) {
padding-bottom: 120px;
}

.content-media-50-50__content {
text-align: left;
margin-bottom: 38px;
}

.content-media-50-50__content__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.content-media-50-50__content__title {
color: var(–title-color);
font-size: 32px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 0;
}

.content-media-50-50__content__content {
margin-top: 40px;
}

.content-media-50-50__content__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.content-media-50-50__content__content ul li,
.content-media-50-50__content__content ol li {
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.content-media-50-50__content__content > *:last-child {
margin-bottom: 0;
}

.content-media-50-50__ctas {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 30px;
}

.content-media-50-50__ctas .button {
border-radius: 10px;
font-size: 14px;
line-height: 18px;
letter-spacing: 0.1em;
padding: 16px 32px;
transition:
color 0.25s ease-out,
background-color 0.25s ease-out,
border-color 0.25s ease-out;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary {
border-color: var(–button-primary-border-color) !important;
background-color: var(–button-primary-bg-color) !important;
color: var(–button-primary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary {
border-color: var(–button-secondary-border-color) !important;
background-color: var(–button-secondary-bg-color) !important;
color: var(–button-secondary-text-color) !important;
}

.content-media-50-50__ctas .content-media-50-50__cta__primary:hover {
border-color: var(–button-primary-hover-border-color) !important;
background-color: var(–button-primary-hover-bg-color) !important;
color: var(–button-primary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

.content-media-50-50__ctas .content-media-50-50__cta__secondary:hover {
border-color: var(–button-secondary-hover-border-color) !important;
background-color: var(–button-secondary-hover-bg-color) !important;
color: var(–button-secondary-hover-text-color) !important;
box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.18);
}

@media (min-width: 992px) {
.content-media-50-50__content__title {
font-size: 46px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic content-media-50-50-block_e8f33cbdf63070b285b3397be1f1edbf
* magic word so the block knows where to use the actual id. */

#content-media-50-50-block_e8f33cbdf63070b285b3397be1f1edbf {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #414042;
–icon-color: #1a31ff;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–border-color: #d9d9d9;
–button-primary-border-color: #1a31ff;
–button-primary-bg-color: #1a31ff;
–button-primary-text-color: #fff;
–button-primary-hover-border-color: #040f4b;
–button-primary-hover-bg-color: #040f4b;
–button-primary-hover-text-color: #fff;
–button-secondary-border-color: #1a31ff;
–button-secondary-bg-color: transparent;
–button-secondary-text-color: #1a31ff;
–button-secondary-hover-border-color: #040f4b;
–button-secondary-hover-bg-color: transparent;
–button-secondary-hover-text-color: #040f4b;
}
/* These are the styles specific in case the user adds an image to the block */

.content-media-50-50__image__wrap {
padding-bottom: 25px;
}

.content-media-50-50__image__wrap > img {
max-width: 100%;
height: auto;
}

.transparent-bg {
background: transparent;
}

.p-tb-65 {
padding-top: 65px;
padding-bottom: 65px;
}

.single-cta-bar #yt-embed-local {
display: none;
}

.single-cta-bar .embed-container iframe,
.single-cta-bar .embed-container object,
.single-cta-bar .embed-container embed {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

.single-cta-bar .embed-container {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
max-width: 100% !important;
}

.single-cta-bar__wrap {
position: relative;
padding: 45px 50px;
}

.single-cta-bar__title {
font-size: 40px;
font-weight: 400;
letter-spacing: -0.04em;
line-height: 1.10;
}

@media (max-width: 768px) {
.single-cta-bar__title {
font-size: 32px;
}
}

.single-cta-bar h1,
.single-cta-bar h2 {
color: #ffffff !important;
}

.single-cta-bar__card .single-cta-bar__content p {
font-size: 16px;
line-height: 160%;
margin-bottom: 30px;
color: #ffffff !important;
}

.single-cta-bar__content {
color: #ffffff;
}

.single-cta-bar__cta {
display: flex;
justify-content: right;
}

@media (max-width: 991px) {
.single-cta-bar__cta {
justify-content: left;
margin-top: 20px;
}
}

.single-cta-bar a.button-solid {
border-radius: 10px;
}

 
 

Over 60 Azure integrations for your most critical cloud services

Microsoft Azure Virtual Machines

Microsoft Azure Virtual Machines

 
Microsoft Azure Storage Account

Microsoft Azure Storage Account

 
Microsoft Azure Load Balancer

Microsoft Azure Load Balancer

 
Microsoft Azure Key Vault

Microsoft Azure Key Vault

 
Microsoft Azure Firewall

Microsoft Azure Firewall

 
Microsoft Azure Cognitive Services

Microsoft Azure Cognitive Services

 
Microsoft Azure Kubernetes Service

Microsoft Azure Kubernetes Service (AKS)

 
Microsoft Azure SQL Database

Microsoft Azure SQL Database

 

.four-column-content {
background-color: var(–bg-color);
padding-block: 60px;
}

.four-column-content__header {
text-align: left;
margin-bottom: 66px;
}

.four-column-content__header__eyebrow {
color: var(–eyebrow-color);
font-size: 18px;
font-weight: 400;
line-height: 1.07;
letter-spacing: 0.1em;
margin-bottom: 23px;
text-transform: uppercase;
}

.four-column-content__header__title {
color: var(–title-color);
font-size: 64px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 23px;
}

.four-column-content__header__content {
margin: 0;
}

.four-column-content__header__content > * {
color: var(–text-color);
font-size: 18px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
}

.four-column-content__columns__wrap + .four-column-content__columns__wrap {
margin-top: 0;
}

.four-column-content__col {
background: var(–col-bg-color);
border-radius: 14px;
display: flex;
flex-direction: column;
padding: 39px 34px 35px;
height: 100%;
}

.four-column-content__col__icon__wrap {
width: auto;
max-height: 120px;
margin-bottom: 0px;
}

.four-column-content__col__icon__wrap > img {
width: auto;
height: 100%;
}

.four-column-content__col__eyebrow {
color: var(–col-eyebrow-color);
font-size: 14px;
font-weight: 400;
line-height: 1.5;
letter-spacing: 0.1em;
margin-bottom: 18px;
text-transform: uppercase;
}

.four-column-content__col__title {
color: var(–col-title-color);
font-size: 28px;
font-weight: 500;
line-height: 1.1;
letter-spacing: -0.02em;
margin-bottom: 18px;
}

.four-column-content__col__content a {
color: var(–col-link-color);
}

.four-column-content__col__content a:hover {
color: var(–col-link-hover-color);
}

.four-column-content__col__content > * {
color: var(–col-text-color);
font-size: 16px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -0.01em;
margin-block: auto 18px;
}

.four-column-content__col__ctas {
margin-top: 18px;
}

.four-column-content__col__ctas .button {
color: var(–col-link-color, var(–link-color));
border-color: var(–col-link-color, var(–link-color));
font-family: “Sharp Grotesk Alt”, sans-serif;
font-size: 14px;
letter-spacing: 0.1em;
padding-bottom: 10px;
}

.four-column-content__col__ctas .button:hover {
color: var(–col-link-hover-color, var(–link-hover-color));
border-color: var(–col-link-hover-color, var(–link-hover-color));
}

.four-column-content__header__content > *:last-child {
margin-bottom: 0;
}

.four-column-content__col__content > *:last-child {
margin-bottom: 0;
}

:not(.four-column-content__plain) > .four-column-content__col__eyebrow {
margin-top: 30px;
}

@media (min-width: 1201px) and (max-width: 1399px) {
.four-column-content__col__title {
font-size: 24px;
}
}

@media (min-width: 992px) and (max-width: 1200px) {
.four-column-content__col__title {
font-size: 20px;
}
}
/* On this color palette I just assign the variable values to the main block,
* that way it will cascade naturally. Notice that I use the generic four-column-content-block_1f899a397d20bd844b510ca1c5f2fcaf
* magic word so the block knows where to use the actual id. */

#four-column-content-block_1f899a397d20bd844b510ca1c5f2fcaf {
–contrast: #f5f5f1;
–bg-color: #fff;
–eyebrow-color: #8187a5;
–title-color: #040f4b;
–text-color: #040f4b;
–link-color: #1a31ff;
–link-hover-color: #1a31ff;
–button-text-color: #040f4b;
–button-bg-color: #fff;
–button-border-color: #040f4b;
–button-text-hover-color: #1a31ff;
–button-bg-hover-color: #fff;
–button-border-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}
/* On this color palette for the plain column */

.four-column-content__plain {
–col-bg-color: transparent;
–col-eyebrow-color: var(–eyebrow-color);
–col-title-color: var(–title-color);
–col-text-color: var(–text-color);
–col-link-color: #1a31ff;
–col-link-hover-color: #1a31ff;
}

.lm-full-width-cta__title,
.lm-full-width-cta__title span {
font-family: ‘Sharp Grotesk’, sans-serif !important;
font-size: 48px;
font-weight: 400;
letter-spacing: -0.04em;
line-height: 1.2;
text-align: center;
}

.lm-full-width-cta__ctas {
align-items: center;
display: flex;
flex-direction: column;
gap: 15px;
justify-content: center;
margin-top: 30px;
}

@media only screen and (min-width: 992px) {
.lm-full-width-cta__ctas {
flex-direction: row;
gap: 30px;
}
}

#four-column-content-block_c40410898368fd16ffe61d9fdff7df8d {
padding-bottom: 0px !important;
}

.transparent-bg {
background: transparent;
}

.p-tb-65 {
padding-top: 65px;
padding-bottom: 65px;
}

.single-cta-bar #yt-embed-local {
display: none;
}

.single-cta-bar .embed-container iframe,
.single-cta-bar .embed-container object,
.single-cta-bar .embed-container embed {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

.single-cta-bar .embed-container {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
max-width: 100% !important;
}

.single-cta-bar__wrap {
position: relative;
padding: 45px 50px;
}

.single-cta-bar__title {
font-size: 40px;
font-weight: 400;
letter-spacing: -0.04em;
line-height: 1.10;
}

@media (max-width: 768px) {
.single-cta-bar__title {
font-size: 32px;
}
}

.single-cta-bar h1,
.single-cta-bar h2 {
color: #ffffff !important;
}

.single-cta-bar__card .single-cta-bar__content p {
font-size: 16px;
line-height: 160%;
margin-bottom: 30px;
color: #ffffff !important;
}

.single-cta-bar__content {
color: #ffffff;
}

.single-cta-bar__cta {
display: flex;
justify-content: right;
}

@media (max-width: 991px) {
.single-cta-bar__cta {
justify-content: left;
margin-top: 20px;
}
}

.single-cta-bar a.button-solid {
border-radius: 10px;
}

Available in Azure Marketplace

.kln-featured-post-slider__wrap {
background-color: #F5F5F1;
border-radius: 22px;
align-items: center;
}

.block-padding {
padding-top: 65px;
padding-bottom: 130px;
}

/* Basic Embla Slider Styles */
.kln-featured-post-slider .embla {
overflow: hidden;
max-width: 100%;
}

.kln-featured-post-slider .embla__viewport {
overflow: hidden;
width: 100%;
}

.kln-featured-post-slider .embla__container {
display: flex;
align-items: stretch;
}

.kln-featured-post-slider .embla__slide {
position: relative;
min-width: 100%;
flex: 1 0 100%;
}

.kln-featured-post-slider .embla__prev,
.kln-featured-post-slider .embla__next,
.kln-featured-post-slider .embla__dot {
padding: 0;
opacity: 0.25;
transition: opacity 0.25s ease;
}

.kln-featured-post-slider .embla__prev:hover,
.kln-featured-post-slider .embla__next:hover,
.kln-featured-post-slider .embla__dot:hover,
.kln-featured-post-slider .embla__dot.active {
opacity: 1;
}

.kln-featured-post-slider .embla__nav {
align-items: center;
display: flex;
gap: 34px;
padding-inline: 20px;
width: fit-content;
position: absolute;
left: 50%;
transform: translate(-50%, 50px);
z-index: 2;
}

.kln-featured-post-slider .embla__dots {
display: flex;
flex-direction: row;
align-items: center;
gap: 10px;
}

.kln-featured-post-slider .embla__prev,
.kln-featured-post-slider .embla__next,
.kln-featured-post-slider .embla__dot {
padding: 0;
}

.kln-featured-post-slider .embla__dot {
padding: 3px;
}

/* Block Specific Styles */

.kln-featured-post-slider figure {
display: block;
margin: 0;
}

.kln-featured-post-slider img,
.kln-featured-post-slider video {
display: block;
height: auto;
max-width: 100%;
border-radius: 10px;
}

.kln-featured-post-slider__ctas {
color: #040F4B !important;
}

.kln-featured-post-slider__ctas .button__underline {
padding: 0 0 5px !important;
color: #040F4B !important;
font-size: 14px !important;
letter-spacing: .01em;
}

.button__underline {
border-bottom: 1px solid #040F4B !important;
}

.kln-featured-post-slider__slide {
background-size: cover;
background-repeat: no-repeat;
height: 100%;
width: 100%;
}

.kln-featured-post-slider__slide .row {
align-items: center;
justify-content: center;
height: 100%;
}

.kln-featured-post-slider__image__wrap__contain img {
max-height: 350px;
max-width: 350px;
object-fit: contain;
flex: 1 1 auto;
}

.kln-featured-post-slider__image__wrap__,
.kln-featured-post-slider__image__wrap__cover {
width: 100%;
padding: 30px;
}

.kln-featured-post-slider__content__wrap {
padding: 30px;
}

.kln-featured-post-slider__eyebrow_image {
width: 100px;
height: auto;
margin-bottom: 20px;
}

.kln-featured-post-slider__title {
font-size: 24px;
font-weight: 400;
letter-spacing: -0.02em;
line-height: 1.2;
margin-bottom: 10px;
color: #040F4B !important;
}

.kln-featured-post-slider p {
font-size: 18px;
font-weight: 400;
line-height: 1.6;
margin-bottom: 20px;
color: #040F4B !important;
}

.kln-featured-post-slider__content {
font-family: “Sharp Grotesk Alt”, sans-serif;
font-size: 12px;
font-weight: 400;
line-height: 1.6;
margin-bottom: 20px;
}

@media only screen and (min-width: 992px) {

.kln-featured-post-slider__content__wrap {
padding: 10px 30px 10px 30px;
}

.kln-featured-post-slider__image__left .row {
flex-direction: row;
}

.kln-featured-post-slider__image__right .row {
flex-direction: row-reverse;
}

.kln-featured-post-slider__image__wrap__contain {
align-items: center;
display: flex;
justify-content: center;
padding: 40px 60px;
}

.kln-featured-post-slider__wrap {
position: relative;
padding: 30px;
}

/* .kln-featured-post-slider__content__wrap {
padding: 60px;
} */

.kln-featured-post-slider__eyebrow_image {
margin-bottom: 30px;
}

.kln-featured-post-slider__title {
font-size: 40px;
font-weight: 400;
letter-spacing: -0.04em;
line-height: 1.1;
margin-bottom: 16px;
}

.kln-featured-post-slider__content {
font-size: 16px;
font-weight: 400;
line-height: 1.5;
margin-bottom: 40px;
}

.kln-featured-post-slider__image__wrap__,
.kln-featured-post-slider__image__wrap__cover {
flex: 1 0 auto;
height: auto;
width: 50%;
}
}

azure billing

Azure Monitoring On-Demand Demo

Discover how LogicMonitor observes Azure environments alongside on-premises infrastructure.

Watch the demo
LogicMonitor's latest innovations to optimize hybrid cloud performance and costs

Empowering CloudOps and Platform Engineering teams with critical insights

LogicMonitor’s latest innovations to optimize hybrid cloud performance and costs.

Watch the webinar
Card Image for Webinar

Going beyond Azure monitoring with LogicMonitor

See how LogicMonitor can help you act on alerts, discover Azure service changes, control costs, and improve context over cloud data for better decision making.

Watch the webinar
Monitor Azure Resource Events with LogicMonitor Logs

Monitor Azure Resource Events with LogicMonitor Logs

Explore how to leverage LogicMonitor’s logs product, LM Logs, and the alerting engine to monitor Azure resource events.

Read the blog

Clear and efficient IT resource management with Resource Explorer

Discover how LogicMonitor’s Resource Explorer revolutionizes monitoring with efficiencies in managing and visualizing AWS and hybrid environments

Read the blog




// URL of the EmblaCarousel script
var emblaScriptURL = “https://unpkg.com/embla-carousel/embla-carousel.umd.js”;

// Load the EmblaCarousel script dynamically and execute the following code once it’s loaded
loadScript(emblaScriptURL, function() {
// Your existing code goes here, after ensuring EmblaCarousel is loaded
const block = document.querySelector(‘#kln-featured-post-slider-block_28c9da2af54023077682e549e2dbf7eb’);
const root = document.querySelector(‘#kln-featured-post-slider-block_28c9da2af54023077682e549e2dbf7eb .embla’);
const viewport = root.querySelector(‘.embla__viewport’);

const prevButton = root.querySelector(‘.embla__prev’);
const nextButton = root.querySelector(‘.embla__next’);
const dots = root.querySelectorAll(‘.embla__dot’);

const options = {
loop: true
};
const embla = EmblaCarousel(viewport, options);

function dotHighlightHandler() {
dots.forEach((dot, index) => {
dot.classList.remove(‘active’);
if (index === embla.selectedScrollSnap()) {
dot.classList.add(‘active’);
}
});
}

prevButton.addEventListener(‘click’, () => {
embla.scrollPrev();
dotHighlightHandler();
}, false);

nextButton.addEventListener(‘click’, () => {
embla.scrollNext();
dotHighlightHandler();
}, false);

dots.forEach((dot, index) => {
dot.addEventListener(‘click’, () => {
embla.scrollTo(index);
dotHighlightHandler();
}, false);
});

// Your code for lazy-loaded images goes here
const figures = block.querySelectorAll(‘.kln-featured-post-slider__slide .kln-featured-post-slider__image__wrap’);

function generatePlaceholder(width, height) {
return `data:image/svg+xml,%3Csvg xmlns=”http://www.w3.org/2000/svg” viewBox=”0 0 ${width} ${height}”%3E%3C/svg%3E`;
}

let itemWidth;
figures.forEach((figure, index) => {
if (index === 0) {
itemWidth = figure.offsetWidth;
}
const media = figure.querySelector(‘*’);
const mediaWidth = media.attributes.width.value;
const mediaHeight = media.attributes.height.value;

const itemHeight = (itemWidth * mediaHeight) / mediaWidth;

media.setAttribute(‘width’, itemWidth);
media.setAttribute(‘height’, itemHeight);
if (media.tagName === ‘IMG’) {
media.setAttribute(‘src’, generatePlaceholder(itemWidth, itemHeight));
}
if (media.tagName === ‘VIDEO’) {
media.setAttribute(‘poster’, generatePlaceholder(itemWidth, itemHeight));
}
});

dotHighlightHandler();
});
})();