diff --git a/public/app/core/config.ts b/public/app/core/config.ts index 1473f8a91f8..13d84772ecf 100644 --- a/public/app/core/config.ts +++ b/public/app/core/config.ts @@ -54,7 +54,11 @@ export class Settings { } } -const bootData = (window as any).grafanaBootData || { settings: {} }; +const bootData = (window as any).grafanaBootData || { + settings: {}, + user: {}, +}; + const options = bootData.settings; options.bootData = bootData; diff --git a/public/app/core/logs_model.ts b/public/app/core/logs_model.ts index 1527f18e4b6..08d53a835d2 100644 --- a/public/app/core/logs_model.ts +++ b/public/app/core/logs_model.ts @@ -1,6 +1,6 @@ import _ from 'lodash'; import { TimeSeries } from 'app/core/core'; -import colors from 'app/core/utils/colors'; +import colors, { getThemeColor } from 'app/core/utils/colors'; export enum LogLevel { crit = 'critical', @@ -22,7 +22,7 @@ export const LogLevelColor = { [LogLevel.info]: colors[0], [LogLevel.debug]: colors[5], [LogLevel.trace]: colors[2], - [LogLevel.unkown]: '#ddd', + [LogLevel.unkown]: getThemeColor('#8e8e8e', '#dde4ed'), }; export interface LogSearchMatch { diff --git a/public/app/core/utils/colors.ts b/public/app/core/utils/colors.ts index 13e02b76e30..34508e94a9f 100644 --- a/public/app/core/utils/colors.ts +++ b/public/app/core/utils/colors.ts @@ -1,5 +1,6 @@ import _ from 'lodash'; import tinycolor from 'tinycolor2'; +import config from 'app/core/config'; export const PALETTE_ROWS = 4; export const PALETTE_COLUMNS = 14; @@ -90,5 +91,9 @@ export function hslToHex(color) { return tinycolor(color).toHexString(); } +export function getThemeColor(dark: string, light: string): string { + return config.bootData.user.lightTheme ? light : dark; +} + export let sortedColors = sortColorsByHue(colors); export default colors; diff --git a/public/sass/_variables.dark.scss b/public/sass/_variables.dark.scss index 3fc3770176d..f38349f48f4 100644 --- a/public/sass/_variables.dark.scss +++ b/public/sass/_variables.dark.scss @@ -350,3 +350,6 @@ $diff-json-icon: $gray-7; //Submenu $variable-option-bg: $blue-dark; + +// logs +$logs-color-unkown: $gray-2; diff --git a/public/sass/_variables.light.scss b/public/sass/_variables.light.scss index c70f75c9946..d76cfce85af 100644 --- a/public/sass/_variables.light.scss +++ b/public/sass/_variables.light.scss @@ -359,3 +359,6 @@ $diff-json-icon: $gray-4; //Submenu $variable-option-bg: $blue-light; + +// logs +$logs-color-unkown: $gray-5; diff --git a/public/sass/components/_panel_logs.scss b/public/sass/components/_panel_logs.scss index 2d708f99d8e..6f1c43cfe1d 100644 --- a/public/sass/components/_panel_logs.scss +++ b/public/sass/components/_panel_logs.scss @@ -1,3 +1,5 @@ +$column-horizontal-spacing: 10px; + .logs-panel-controls { display: flex; background-color: $page-bg; @@ -59,8 +61,14 @@ > div { display: table-cell; - padding-left: 10px; - border: 1px solid transparent; + padding-right: $column-horizontal-spacing; + vertical-align: middle; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + } + + &:hover { + background: $page-bg; } } @@ -70,6 +78,7 @@ .logs-row__labels { max-width: 20%; + line-height: 1.2; } .logs-row__message { @@ -93,36 +102,55 @@ } .logs-row__level { - background-color: transparent; position: relative; - width: 3px; - padding: 0 !important; + + &::after { + content: ''; + display: block; + position: absolute; + top: 1px; + bottom: 1px; + width: 3px; + background-color: $logs-color-unkown; + } &--critical, &--crit { - background-color: #705da0; + &::after { + background-color: #705da0; + } } &--error, &--err { - background-color: #e24d42; + &::after { + background-color: #e24d42; + } } &--warning, &--warn { - background-color: #eab839; + &::after { + background-color: $warn; + } } &--info { - background-color: #7eb26d; + &::after { + background-color: #7eb26d; + } } &--debug { - background-color: #1f78c1; + &::after { + background-color: #1f78c1; + } } &--trace { - background-color: #6ed0e0; + &::after { + background-color: #6ed0e0; + } } } @@ -162,10 +190,6 @@ box-shadow: $popover-shadow; } -.logs-row__labels { - line-height: 1.2; -} - .logs-stats__info { margin-bottom: $spacer / 2; }