Skip to content

Commit eb66115

Browse files
Fix several doc links in security solution (#243176)
This PR fixes some doc links in the Security solution that are likely broken in stateful since 9.0. This needs to be backported to previous 9 versions that are still being released. @elastic/security-detection-rule-management This PR is a "temporary" fix to get the links right, but documentation links should use the [doc link service](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-doc-links/src/get_doc_links.ts) so we can catch these on time if we move docs around or change the URL structure. I created #243178 to track it Fixes: elastic/docs-content#3903 Before: <img width="781" height="222" alt="image" src="https://github.com/user-attachments/assets/959f2607-535c-429d-963c-ad40328840e0" /> After: <img width="801" height="229" alt="image" src="https://github.com/user-attachments/assets/9195f8f9-a074-4ed5-b00c-0bb7bef8e006" /> --------- Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co> (cherry picked from commit 0d2619d)
1 parent 1a3f520 commit eb66115

4 files changed

Lines changed: 18 additions & 17 deletions

File tree

x-pack/solutions/security/plugins/security_solution/public/common/components/links_to_docs/doc_link.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,15 @@ import { ExternalLink } from './external_link';
1212
import { COMMON_ARIA_LABEL_ENDING } from './links_translations';
1313

1414
interface DocLinkProps {
15-
guidePath?: string;
1615
docPath: string;
1716
linkText: string;
1817
}
1918

20-
const DocLink: FC<DocLinkProps> = ({ guidePath = 'security', docPath, linkText }) => {
19+
const DocLink: FC<DocLinkProps> = ({ docPath, linkText }) => {
2120
const { services } = useKibana();
22-
const { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } = services.docLinks;
21+
const { ELASTIC_WEBSITE_URL } = services.docLinks;
2322

24-
const url = `${ELASTIC_WEBSITE_URL}guide/en/${guidePath}/${DOC_LINK_VERSION}/${docPath}`;
23+
const url = `${ELASTIC_WEBSITE_URL}docs/${docPath}`;
2524
const ariaLabel = `${linkText} - ${COMMON_ARIA_LABEL_ENDING}`;
2625

2726
return (

x-pack/solutions/security/plugins/security_solution/public/common/components/links_to_docs/links_translations.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,31 +18,35 @@ export const COMMON_ARIA_LABEL_ENDING = i18n.translate(
1818
}
1919
);
2020

21-
export const SOLUTION_REQUIREMENTS_LINK_PATH = 'sec-requirements.html';
21+
export const SOLUTION_REQUIREMENTS_LINK_PATH =
22+
'solutions/security/get-started/elastic-security-requirements';
2223
export const SOLUTION_REQUIREMENTS_LINK_TEXT = i18n.translate(
2324
'xpack.securitySolution.documentationLinks.solutionRequirements.text',
2425
{
2526
defaultMessage: 'Elastic Security system requirements',
2627
}
2728
);
2829

29-
export const DETECTIONS_REQUIREMENTS_LINK_PATH = 'detections-permissions-section.html';
30+
export const DETECTIONS_REQUIREMENTS_LINK_PATH =
31+
'solutions/security/detect-and-alert/detections-requirements';
3032
export const DETECTIONS_REQUIREMENTS_LINK_TEXT = i18n.translate(
3133
'xpack.securitySolution.documentationLinks.detectionsRequirements.text',
3234
{
3335
defaultMessage: 'Detections prerequisites and requirements',
3436
}
3537
);
3638

37-
export const ML_JOB_COMPATIBILITY_LINK_PATH = 'alerts-ui-monitor.html#ml-job-compatibility';
39+
export const ML_JOB_COMPATIBILITY_LINK_PATH =
40+
'troubleshoot/security/detection-rules#ml-job-compatibility';
3841
export const ML_JOB_COMPATIBILITY_LINK_TEXT = i18n.translate(
3942
'xpack.securitySolution.documentationLinks.mlJobCompatibility.text',
4043
{
4144
defaultMessage: 'ML job compatibility',
4245
}
4346
);
4447

45-
export const COVERAGE_OVERVIEW_LINK_PATH = 'rules-coverage.html';
48+
export const COVERAGE_OVERVIEW_LINK_PATH =
49+
'solutions/security/detect-and-alert/mitre-attandckr-coverage';
4650
export const COVERAGE_OVERVIEW_LINK_TEXT = i18n.translate(
4751
'xpack.securitySolution.documentationLinks.coverageOverview.text',
4852
{

x-pack/solutions/security/plugins/security_solution/public/detection_engine/rule_creation_ui/components/step_define_rule/index.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -395,14 +395,16 @@ const StepDefineRuleComponent: FC<StepDefineRuleProps> = ({
395395
id="xpack.securitySolution.dataViewSelectorText1"
396396
defaultMessage="Use Kibana "
397397
/>
398-
<DocLink guidePath="kibana" docPath="data-views.html" linkText="Data Views" />
398+
<DocLink
399+
docPath="explore-analyze/find-and-organize/data-views"
400+
linkText="Data Views"
401+
/>
399402
<FormattedMessage
400403
id="xpack.securitySolution.dataViewSelectorText2"
401404
defaultMessage=" or specify individual "
402405
/>
403406
<DocLink
404-
guidePath="kibana"
405-
docPath="index-patterns-api-create.html"
407+
docPath="api/doc/kibana/group/endpoint-data-views"
406408
linkText="index patterns"
407409
/>
408410
<FormattedMessage

x-pack/solutions/security/plugins/security_solution/public/detection_engine/rule_management/components/rule_details/three_way_diff/final_edit/fields/data_source/data_source_info_text.tsx

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,12 @@ export function DataSourceInfoText(): JSX.Element {
1717
id="xpack.securitySolution.dataViewSelectorText1"
1818
defaultMessage="Use Kibana "
1919
/>
20-
<DocLink guidePath="kibana" docPath="data-views.html" linkText="Data Views" />
20+
<DocLink docPath="explore-analyze/find-and-organize/data-views" linkText="Data Views" />
2121
<FormattedMessage
2222
id="xpack.securitySolution.dataViewSelectorText2"
2323
defaultMessage=" or specify individual "
2424
/>
25-
<DocLink
26-
guidePath="kibana"
27-
docPath="index-patterns-api-create.html"
28-
linkText="index patterns"
29-
/>
25+
<DocLink docPath="api/doc/kibana/group/endpoint-data-views" linkText="index patterns" />
3026
<FormattedMessage
3127
id="xpack.securitySolution.dataViewSelectorText3"
3228
defaultMessage=" as your rule's data source to be searched."

0 commit comments

Comments
 (0)