snapshot of https://github.com/mattermost/mattermost.git (master, 2026-09-16; blobs > 131072B omitted)
Some checks failed
Server CI / Postgres (shard 0) (push) Has been skipped
Server CI / Postgres (shard 3) (push) Has been skipped
BuildEnv Docker Image / build-image (push) Failing after 4s
BuildEnv Docker Image / build-image-fips (push) Failing after 4s
Migration Review & Release Notes / Generate migration review & release notes (push) Failing after 3s
Server CI / Build Environment (push) Failing after 3s
Server CI / Postgres (shard 1) (push) Has been skipped
Tools CI / check-style (mattermost-govet) (push) Failing after 4s
Server CI / Postgres (shard 2) (push) Has been skipped
Tools CI / check-style (mmgotool) (push) Failing after 3s
Server CI / Elasticsearch v8 Compatibility (push) Has been skipped
Server CI / OpenSearch v2 Compatibility (push) Has been skipped
Server CI / Postgres FIPS (shard 0) (push) Has been skipped
Tools CI / Test (mattermost-govet) (push) Failing after 3s
Server CI / Postgres FIPS (shard 1) (push) Has been skipped
Server CI / Postgres FIPS (shard 2) (push) Has been skipped
Tools CI / Test (mmgotool) (push) Failing after 3s
Server CI / Postgres FIPS (shard 3) (push) Has been skipped
Server CI / Run mmctl tests (push) Has been skipped
Server CI / Run mmctl tests (FIPS) (push) Has been skipped
Server CI / Merge Postgres Test Results (push) Has been skipped
Server CI / Merge Postgres FIPS Test Results (push) Has been skipped
Server CI / Check backport migrations (push) Has been skipped
Server CI / Check generated files (push) Has been skipped
Server CI / check-style (push) Has been skipped
Server CI / Vet API (push) Has been skipped
Server CI / Build mattermost server app (push) Has been skipped
Server CI / Server CI Complete (push) Failing after 2s
Server CI / Server CI Artifacts (push) Has been skipped
Server CI / Sentry Upload (push) Has been skipped
Server CI / Server CI Report (push) Failing after 5m1s
Server CI Nightly Race / Race Detector (push) Has been skipped
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Webapp CI Cache Warm / Warm Webapp node_modules Cache (push) Has been cancelled
E2E CI Cache Warm / Warm E2E npm Registry Cache (push) Has been cancelled
API / build (push) Has been cancelled
Web App CI / check-types (push) Has been cancelled
Web App CI / check-lint (push) Has been cancelled
Web App CI / check-i18n (push) Has been cancelled
Web App CI / check-external-links (push) Has been cancelled
Web App CI / test (platform) (push) Has been cancelled
Web App CI / test (mattermost-redux) (push) Has been cancelled
Web App CI / test (channels shard 1/4) (push) Has been cancelled
Web App CI / test (channels shard 2/4) (push) Has been cancelled
Web App CI / test (channels shard 3/4) (push) Has been cancelled
Web App CI / test (channels shard 4/4) (push) Has been cancelled
Web App CI / upload-coverage (push) Has been cancelled
Web App CI / build (push) Has been cancelled
YAML Lint / yamllint (push) Has been cancelled
Push mirrored docker images / cd/Push mirrored docker images (push) Has been cancelled
docs-cd / Build and deploy docs (push) Has been cancelled
Docs CI / build (push) Has been cancelled
E2E Cache Warm: Cypress deps / Warm Cypress deps cache (push) Has been cancelled
Scorecards supply-chain security / Scorecard analysis (push) Has been cancelled
Server CI Weekly / Postgres FIPS (push) Has been skipped
Server CI Weekly / Run mmctl tests (FIPS) (push) Has been skipped
Server CI Weekly / Postgres with binary parameters (push) Has been skipped
Server CI Weekly / Build Environment (push) Failing after 1s
Server CI Cache Warm / Warm Go Module and Build Cache (push) Failing after 2s
Server CI Nightly Race / Build Environment (push) Failing after 1s

This commit is contained in:
upstream-mirror
2026-09-16 00:29:55 +05:00
commit 240db4e2a7
15309 changed files with 2173406 additions and 0 deletions

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,718 @@
{
"__inputs": [
{
"name": "DS_LOKI",
"label": "Loki",
"description": "Loki data source",
"type": "datasource",
"pluginId": "loki",
"pluginName": "Loki"
}
],
"__requires": [
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "10.0.0"
},
{
"type": "datasource",
"id": "loki",
"name": "Loki",
"version": "1.0.0"
}
],
"annotations": {
"list": []
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 1,
"id": null,
"links": [],
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 10,
"title": "Overview",
"type": "row"
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisBorderShow": false,
"axisCenteredZero": false,
"axisLabel": "Count",
"drawStyle": "bars",
"fillOpacity": 80,
"gradientMode": "none",
"lineWidth": 1,
"pointSize": 5,
"stacking": {
"group": "A",
"mode": "normal"
}
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "error"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "red",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "warn"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "yellow",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "info"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "green",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "debug"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "blue",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 24,
"x": 0,
"y": 1
},
"id": 1,
"options": {
"legend": {
"calcs": [
"sum"
],
"displayMode": "table",
"placement": "right"
},
"tooltip": {
"mode": "multi"
}
},
"title": "Log Volume by Level",
"type": "timeseries",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | detected_level=~\"$log_level\" [$__auto])) by (detected_level)",
"legendFormat": "{{detected_level}}",
"refId": "A"
}
]
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "yellow",
"value": 10
},
{
"color": "red",
"value": 50
}
]
},
"mappings": []
}
},
"gridPos": {
"h": 4,
"w": 6,
"x": 0,
"y": 9
},
"id": 2,
"options": {
"colorMode": "background",
"graphMode": "area",
"reduceOptions": {
"calcs": [
"sum"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"title": "Total Errors (selected range)",
"type": "stat",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | detected_level=\"error\" [$__auto]))",
"refId": "A"
}
]
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "yellow",
"value": 50
},
{
"color": "orange",
"value": 200
}
]
}
}
},
"gridPos": {
"h": 4,
"w": 6,
"x": 6,
"y": 9
},
"id": 3,
"options": {
"colorMode": "background",
"graphMode": "area",
"reduceOptions": {
"calcs": [
"sum"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"title": "Total Warnings (selected range)",
"type": "stat",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | detected_level=\"warn\" [$__auto]))",
"refId": "A"
}
]
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
}
]
}
}
},
"gridPos": {
"h": 4,
"w": 6,
"x": 12,
"y": 9
},
"id": 4,
"options": {
"colorMode": "background",
"graphMode": "area",
"reduceOptions": {
"calcs": [
"sum"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"title": "Total Log Lines (selected range)",
"type": "stat",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} [$__auto]))",
"refId": "A"
}
]
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 1
}
]
}
}
},
"gridPos": {
"h": 4,
"w": 6,
"x": 18,
"y": 9
},
"id": 5,
"options": {
"colorMode": "background",
"graphMode": "area",
"reduceOptions": {
"calcs": [
"sum"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"title": "HTTP 4xx/5xx Responses",
"type": "stat",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | json | status_code >= 400 [$__auto]))",
"refId": "A"
}
]
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 13
},
"id": 11,
"title": "Error Analysis",
"type": "row"
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "red",
"mode": "fixed"
},
"custom": {
"axisBorderShow": false,
"axisLabel": "errors / sec",
"drawStyle": "line",
"fillOpacity": 20,
"lineWidth": 2,
"pointSize": 5
}
}
},
"gridPos": {
"h": 8,
"w": 24,
"x": 0,
"y": 14
},
"id": 6,
"options": {
"legend": {
"calcs": [
"mean",
"max"
],
"displayMode": "table",
"placement": "right"
},
"tooltip": {
"mode": "multi"
}
},
"title": "Error Rate Over Time",
"type": "timeseries",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "sum(rate({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | detected_level=\"error\" [$__auto])) by (service_instance_id)",
"legendFormat": "{{service_instance_id}}",
"refId": "A"
}
]
},
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"align": "auto",
"cellOptions": {
"type": "auto"
},
"filterable": true
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Count"
},
"properties": [
{
"id": "custom.width",
"value": 100
}
]
}
]
},
"gridPos": {
"h": 10,
"w": 24,
"x": 0,
"y": 22
},
"id": 7,
"options": {
"showHeader": true,
"sortBy": [
{
"desc": true,
"displayName": "Count"
}
]
},
"title": "Top Error Messages",
"type": "table",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "topk(10, sum by (service_name, log_message) (count_over_time({service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | detected_level=\"error\" | json | label_format log_message=\"{{or .msg .message}}\" [$__range])))",
"queryType": "instant",
"refId": "A"
}
],
"transformations": [
{
"id": "labelsToFields",
"options": {
"mode": "columns"
}
},
{
"id": "organize",
"options": {
"excludeByName": {
"Time": true
},
"indexByName": {},
"renameByName": {
"Value": "Count",
"Value #A": "Count",
"log_message": "Message",
"service_name": "Service"
}
}
}
]
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 32
},
"id": 12,
"title": "Log Browser",
"type": "row"
},
{
"id": 8,
"type": "logs",
"title": "Mattermost Logs",
"gridPos": {
"x": 0,
"y": 33,
"h": 14,
"w": 24
},
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "11.6.1",
"targets": [
{
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"expr": "{service_name=~\"$service_name\", service_instance_id=~\"$service_instance_id\"} | json | detected_level=~\"$log_level\" |~ \"$search\"",
"refId": "A",
"editorMode": "code",
"queryType": "range",
"direction": "backward"
}
],
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"options": {
"showTime": true,
"showLabels": false,
"showCommonLabels": true,
"wrapLogMessage": true,
"prettifyLogMessage": false,
"enableLogDetails": true,
"enableInfiniteScrolling": false,
"dedupStrategy": "none",
"sortOrder": "Descending"
}
}
],
"schemaVersion": 39,
"tags": [
"mattermost",
"loki",
"logs"
],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": "All",
"value": "$__all"
},
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"definition": "label_values(service_name)",
"includeAll": true,
"multi": true,
"name": "service_name",
"query": "label_values(service_name)",
"refresh": 2,
"sort": 1,
"type": "query"
},
{
"current": {
"selected": true,
"text": "All",
"value": "$__all"
},
"datasource": {
"type": "loki",
"uid": "${DS_LOKI}"
},
"definition": "label_values(service_instance_id)",
"includeAll": true,
"multi": true,
"name": "service_instance_id",
"query": "label_values(service_instance_id)",
"refresh": 2,
"sort": 1,
"type": "query"
},
{
"current": {
"selected": true,
"text": "All",
"value": "$__all"
},
"description": "Filter by log severity",
"hide": 0,
"includeAll": true,
"multi": true,
"name": "log_level",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "info",
"value": "info"
},
{
"selected": false,
"text": "warn",
"value": "warn"
},
{
"selected": false,
"text": "error",
"value": "error"
}
],
"query": "info,warn,error",
"queryValue": "",
"refresh": 2,
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": false,
"text": "",
"value": ""
},
"name": "search",
"options": [],
"query": "",
"type": "textbox"
}
]
},
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Mattermost Log Aggregation",
"uid": "mattermost-loki-logs",
"version": 1
}

View File

@@ -0,0 +1,73 @@
# Grafana Loki configuration for Mattermost log aggregation
# This is a production-ready config for a single-instance deployment
# colocated with an existing Grafana/Prometheus monitoring server.
#
# Install location: /opt/loki/loki-config.yaml
# Data directory: /opt/loki/data/
auth_enabled: false
server:
http_listen_port: 3100
grpc_listen_port: 9095
log_level: info
common:
instance_addr: 127.0.0.1
path_prefix: /opt/loki/data
storage:
filesystem:
chunks_directory: /opt/loki/data/chunks
rules_directory: /opt/loki/data/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
# ---------------------------------------------------------------------------
# Retention settings
# ---------------------------------------------------------------------------
# Loki requires retention to be specified in hours (h). The default here
# is 14 days. To change it, update retention_period below.
#
# Common values:
# 336h = 14 days (default)
# 720h = 30 days
# 2160h = 90 days
# 8760h = 365 days
# ---------------------------------------------------------------------------
limits_config:
retention_period: 336h # 14 days (336 hours) — adjust as needed
metric_aggregation_enabled: true
allow_structured_metadata: true
compactor:
working_directory: /opt/loki/data/compactor
compaction_interval: 10m
retention_enabled: true # must be true for retention_period to apply
retention_delete_delay: 2h
retention_delete_worker_count: 150
delete_request_store: filesystem
schema_config:
configs:
- from: "2024-01-01"
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h
query_range:
results_cache:
cache:
embedded_cache:
enabled: true
max_size_mb: 100
ruler:
alertmanager_url: http://localhost:9093
frontend:
encoding: protobuf

View File

@@ -0,0 +1,50 @@
# OpenTelemetry Collector configuration for Mattermost log collection
receivers:
filelog/mattermost:
include: [ /opt/mattermost/logs/mattermost.log ]
start_at: beginning
operators:
- type: json_parser
processors:
batch:
send_batch_size: 10000
timeout: 10s
resource:
attributes:
- key: host.name
value: "<HOSTNAME>"
action: upsert
- key: service.instance.id
value: "<HOSTNAME>"
action: upsert
- key: service.name
value: "<SERVICE_NAME>"
action: upsert
transform/severity:
log_statements:
- context: log
statements:
- set(log.severity_text, log.attributes["level"]) where log.attributes["level"] != nil
- set(log.severity_number, 9) where log.attributes["level"] == "info"
- set(log.severity_number, 13) where log.attributes["level"] == "warn" or log.attributes["level"] == "warning"
- set(log.severity_number, 17) where log.attributes["level"] == "error"
exporters:
otlp_http/loki:
endpoint: "http://<LOKI_HOST>:3100/otlp"
tls:
insecure: true
service:
telemetry:
logs:
level: "info"
pipelines:
logs/mattermost:
receivers: [ filelog/mattermost ]
processors: [ resource, transform/severity, batch ]
exporters: [ otlp_http/loki ]

View File

@@ -0,0 +1,50 @@
# OpenTelemetry Collector configuration for PostgreSQL log collection
receivers:
filelog/postgres:
include: [ /var/log/postgresql/*.json ]
start_at: beginning
operators:
- type: json_parser
processors:
batch:
send_batch_size: 10000
timeout: 10s
resource:
attributes:
- key: host.name
value: "<HOSTNAME>"
action: upsert
- key: service.instance.id
value: "<HOSTNAME>"
action: upsert
- key: service.name
value: "<SERVICE_NAME>"
action: upsert
transform/severity:
log_statements:
- context: log
statements:
- set(log.severity_text, log.attributes["error_severity"]) where log.attributes["error_severity"] != nil
- set(log.severity_number, 9) where log.attributes["error_severity"] == "LOG" or log.attributes["error_severity"] == "DETAIL" or log.attributes["error_severity"] == "STATEMENT"
- set(log.severity_number, 13) where log.attributes["error_severity"] == "WARNING"
- set(log.severity_number, 17) where log.attributes["error_severity"] == "ERROR" or log.attributes["error_severity"] == "FATAL" or log.attributes["error_severity"] == "PANIC"
exporters:
otlp_http/loki:
endpoint: "http://<LOKI_HOST>:3100/otlp"
tls:
insecure: true
service:
telemetry:
logs:
level: "info"
pipelines:
logs/postgres:
receivers: [ filelog/postgres ]
processors: [ resource, transform/severity, batch ]
exporters: [ otlp_http/loki ]

View File

@@ -0,0 +1,178 @@
<managedAppConfiguration>
<version>1.0.0.1</version>
<bundleId>com.mattermost.rn</bundleId>
<dict>
<string keyName="inAppPinCode">
<defaultValue>
<value>true</value>
</defaultValue>
</string>
<string keyName="inAppSessionAuth">
<defaultValue>
<value>false</value>
</defaultValue>
</string>
<string keyName="blurApplicationScreen">
<defaultValue>
<value>true</value>
</defaultValue>
</string>
<string keyName="jailBreakDetection">
<defaultValue>
<value>true</value>
</defaultValue>
</string>
<string keyName="copyAndPasteProtection">
<defaultValue>
<value>false</value>
</defaultValue>
</string>
<string keyName="serverUrl">
</string>
<string keyName="allowOtherServers">
<defaultValue>
<value>true</value>
</defaultValue>
</string>
<string keyName="username">
<defaultValue>
<userVariable value="emailAddress" />
</defaultValue>
</string>
<string keyName="vendor">
<defaultValue>
<value>Mattermost</value>
</defaultValue>
</string>
<string keyName="useVPN">
<defaultValue>
<value>false</value>
</defaultValue>
</string>
<string keyName="timeoutVPN">
<defaultValue>
<value>30</value>
</defaultValue>
</string>
</dict>
<presentation defaultLocale="en-US">
<fieldGroup>
<name>
<!-- Language will be the next thing the Spec Creator Tool will support. Only English supported at the moment -->
<language value="en-US">Mobile Privacy</language>
</name>
<field keyName="inAppPinCode" type="input">
<label>
<language value="en-US">in-App Pincode</language>
</label>
<description>
<language value="en-US">Locks the app so the user needs to validate as the owner of the phone, it will prompt for fingerprint or passcode when the app first opens and when the app has been in the background for more than 5 minutes.</language>
</description>
</field>
<field keyName="inAppSessionAuth" type="input">
<label>
<language value="en-US">in-App Session Authentication</language>
</label>
<description>
<language value="en-US">Use the app’s internal browser for SSO instead of an external browser.</language>
</description>
</field>
<field keyName="blurApplicationScreen" type="input">
<label>
<language value="en-US">Blur Application Screen</language>
</label>
<description>
<language value="en-US">Protects app on screen information while the app is in the background.</language>
</description>
</field>
</fieldGroup>
<fieldGroup>
<name>
<!-- Language will be the next thing the Spec Creator Tool will support. Only English supported at the moment -->
<language value="en-US">OS Integrity</language>
</name>
<field keyName="jailBreakDetection" type="input">
<label>
<language value="en-US">Jailbreak &#x2F; Root Detection</language>
</label>
<description>
<language value="en-US">Disable app launch on Jailbroken or rooted devices.</language>
</description>
</field>
</fieldGroup>
<fieldGroup>
<name>
<!-- Language will be the next thing the Spec Creator Tool will support. Only English supported at the moment -->
<language value="en-US">Mobile Data Loss Prevention</language>
</name>
<field keyName="copyAndPasteProtection" type="input">
<label>
<language value="en-US">Copy&amp;Paste Protection</language>
</label>
<description>
<language value="en-US">Disables the ability to copy or paste from any input in the app.</language>
</description>
</field>
</fieldGroup>
<fieldGroup>
<name>
<!-- Language will be the next thing the Spec Creator Tool will support. Only English supported at the moment -->
<language value="en-US">Networking</language>
</name>
<field keyName="useVPN" type="input">
<label>
<language value="en-US">Use VPN</language>
</label>
<description>
<language value="en-US">Enable connection to the Mattermost Server to use a per-app VPN or VPN on-demand.</language>
</description>
</field>
<field keyName="timeoutVPN" type="input">
<label>
<language value="en-US">VPN Timeout</language>
</label>
<description>
<language value="en-US">Set how long the request waits (in seconds) for an initial VPN connection to establish before timeout.</language>
</description>
</field>
</fieldGroup>
<fieldGroup>
<name>
<!-- Language will be the next thing the Spec Creator Tool will support. Only English supported at the moment -->
<language value="en-US">Mattermost settings</language>
</name>
<field keyName="serverUrl" type="input">
<label>
<language value="en-US">Mattermost Server URL</language>
</label>
<description>
<language value="en-US">Set the Mattermost server URL users will be using as default.</language>
</description>
</field>
<field keyName="allowOtherServers" type="input">
<label>
<language value="en-US">Allow Other Servers</language>
</label>
<description>
<language value="en-US">Allow the user to change the above server URL.</language>
</description>
</field>
<field keyName="username" type="input">
<label>
<language value="en-US">Default Username</language>
</label>
<description>
<language value="en-US">Set the username or email address to use to authenticate against the Mattermost Server.</language>
</description>
</field>
<field keyName="vendor" type="input">
<label>
<language value="en-US">EMM Vendor or Company Name</language>
</label>
<description>
<language value="en-US">Name of the EMM vendor or company deploying the app so the users are aware the app is being protected.</language>
</description>
</field>
</fieldGroup>
</presentation>
</managedAppConfiguration>

View File

@@ -0,0 +1,90 @@
{
"sample-console": {
"type": "console",
"options": {
"out": "stdout"
},
"format": "plain",
"format_options": {
"delim": " | "
},
"levels": [
{"id": 5, "name": "debug"},
{"id": 4, "name": "info", "color": 36},
{"id": 3, "name": "warn"},
{"id": 2, "name": "error", "stacktrace": true, "color": 31},
{"id": 1, "name": "fatal", "stacktrace": true},
{"id": 0, "name": "panic", "stacktrace": true}
],
"maxqueuesize": 1000
},
"sample-file": {
"type": "file",
"options": {
"filename": "test.log",
"max_size": 1000000,
"max_age": 1,
"max_backups": 10,
"compress": true
},
"format": "json",
"format_options": {
},
"levels": [
{"id": 5, "name": "debug"},
{"id": 4, "name": "info"},
{"id": 3, "name": "warn"},
{"id": 2, "name": "error", "stacktrace": true},
{"id": 1, "name": "fatal", "stacktrace": true},
{"id": 0, "name": "panic", "stacktrace": true}
],
"maxqueuesize": 1000
},
"sample-tcp": {
"type": "tcp",
"options": {
"host": "localhost",
"port": 18066,
"tls": false,
"cert": "",
"insecure": false
},
"format": "gelf",
"format_options": {
"hostname": "server01"
},
"levels": [
{"id": 5, "name": "debug"},
{"id": 4, "name": "info"},
{"id": 3, "name": "warn"},
{"id": 2, "name": "error", "stacktrace": true},
{"id": 1, "name": "fatal", "stacktrace": true},
{"id": 0, "name": "panic", "stacktrace": true}
],
"maxqueuesize": 1000
},
"sample-syslog": {
"type": "syslog",
"options": {
"host": "localhost",
"port": 18066,
"tls": false,
"cert": "",
"insecure": false,
"tag": "testapp"
},
"format": "plain",
"format_options": {
"delim": " "
},
"levels": [
{"id": 5, "name": "debug"},
{"id": 4, "name": "info"},
{"id": 3, "name": "warn"},
{"id": 2, "name": "error", "stacktrace": true},
{"id": 1, "name": "fatal", "stacktrace": true},
{"id": 0, "name": "panic", "stacktrace": true}
],
"maxqueuesize": 1000
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Some files were not shown because too many files have changed in this diff Show More