From 3336cbb76367f17161d6fffdef54b670784b7c8b Mon Sep 17 00:00:00 2001 From: Parth Langalia Date: Thu, 7 Aug 2025 15:23:45 +0530 Subject: [PATCH 1/5] CONN-5027: Added Github Copilot source --- blog-service/2025-08-08-collection.md | 12 ++ cid-redirects.json | 1 + .../product-list/product-list-a-l.md | 2 +- .../github-copilot-source.md | 109 ++++++++++++++++++ .../index.md | 6 + sidebars.ts | 1 + static/files/c2c/github-copilot/example.json | 18 +++ static/files/c2c/github-copilot/example.tf | 21 ++++ 8 files changed, 169 insertions(+), 1 deletion(-) create mode 100644 blog-service/2025-08-08-collection.md create mode 100644 docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md create mode 100644 static/files/c2c/github-copilot/example.json create mode 100644 static/files/c2c/github-copilot/example.tf diff --git a/blog-service/2025-08-08-collection.md b/blog-service/2025-08-08-collection.md new file mode 100644 index 0000000000..11a9fe31f9 --- /dev/null +++ b/blog-service/2025-08-08-collection.md @@ -0,0 +1,12 @@ +--- +title: Github Copilot Source (Collection) +image: https://help.sumologic.com/img/sumo-square.png +keywords: + - c2c + - github-copilot-source +hide_table_of_contents: true +--- + +import useBaseUrl from '@docusaurus/useBaseUrl'; + +We're excited to announce the release of our new cloud-to-cloud source for Github Copilot. This source aims to collect the organization and team metrics logs from the Copilot platform and send them to Sumo Logic for streamlined analysis. [Learn more](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source). \ No newline at end of file diff --git a/cid-redirects.json b/cid-redirects.json index a2812ea7f4..97106345d1 100644 --- a/cid-redirects.json +++ b/cid-redirects.json @@ -2914,6 +2914,7 @@ "/cid/21333": "/docs/integrations/microsoft-azure/microsoft-defender-for-endpoint", "/cid/21039": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/vectra-source", "/cid/21059": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/onelogin-source", + "/cid/27061": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source", "/cid/21041": "/docs/integrations/google/cloud-security-command-center", "/cid/21097": "/docs/integrations/saas-cloud/confluent-cloud", "/cid/21040": "/docs/manage/manage-subscription/create-and-manage-orgs/create-manage-orgs-service-providers", diff --git a/docs/integrations/product-list/product-list-a-l.md b/docs/integrations/product-list/product-list-a-l.md index 42054a8512..c5a263eabf 100644 --- a/docs/integrations/product-list/product-list-a-l.md +++ b/docs/integrations/product-list/product-list-a-l.md @@ -249,7 +249,7 @@ For descriptions of the different types of integrations Sumo Logic offers, see [ | Thumbnail icon | [Genea](https://www.getgenea.com/) | Cloud SIEM integration: [Sequr](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/8eb022d6-fc75-49e7-8308-2fd04d046ea2.md) | | Thumbnail icon | [Genetec](https://www.genetec.com/) | Cloud SIEM integration: [Genetec](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/e71c7bca-0423-4dbe-885e-efed5e058190.md) | | Thumbnail icon | [Gigamon](https://www.gigamon.com/) | Cloud SIEM integration: [Gigamon](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/f575ffed-7b6d-406e-9a55-848b4b6a720f.md)
Partner integrations:
- [Gigamon HAWK](https://github.com/SumoLogic/sumologic-public-partner-apps/tree/master/Gigamon_HAWK)
- [Gigamon ThreatINSIGHT](https://github.com/SumoLogic/sumologic-public-partner-apps/tree/master/Gigamon_ThreatINSIGHT) | -| Thumbnail icon | [GitHub](https://github.com/) | App: [GitHub](/docs/integrations/app-development/github/)
Automation integration: [GitHub](/docs/platform-services/automation-service/app-central/integrations/github/)
Cloud SIEM integration: [Github](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/193c791a-bb10-4742-a429-1256535f888b.md#vendors-github)
Community app: [Sumo Logic for GitHub Actions](https://github.com/SumoLogic/sumologic-content/tree/master/GitHub/GitHub_Actions) | +| Thumbnail icon | [GitHub](https://github.com/) | App: [GitHub](/docs/integrations/app-development/github/)
Automation integration: [GitHub](/docs/platform-services/automation-service/app-central/integrations/github/)
Cloud SIEM integration: [Github](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/193c791a-bb10-4742-a429-1256535f888b.md#vendors-github)
Community app: [Sumo Logic for GitHub Actions](https://github.com/SumoLogic/sumologic-content/tree/master/GitHub/GitHub_Actions)
Collector: [Github Copilot](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source) | | Thumbnail icon | [GitLab](https://about.gitlab.com/) | App: [GitLab](/docs/integrations/app-development/gitlab/)
Automation integration: [GitLab](/docs/platform-services/automation-service/app-central/integrations/gitlab/) | | Thumbnail icon | [Gmail](https://www.google.com/gmail/about/) | App: [Gmail Trace Logs](/docs/integrations/saas-cloud/gmail-tracelogs)
Automation integrations:
- [Gmail](/docs/platform-services/automation-service/app-central/integrations/gmail/)
- [Gmail Multiple Mailbox](/docs/platform-services/automation-service/app-central/integrations/gmail-multiple-mailbox/)
Collector: [Gmail Trace Logs Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/gmail-tracelogs-source) | | Thumbnail icon | [Google](https://about.google/) | Apps:
- [Google App Engine](/docs/integrations/google/app-engine/)
- [Google BigQuery](/docs/integrations/google/bigquery/)
- [Google Cloud AlloyDB for PostgreSQL](/docs/integrations/google/cloud-alloydb-for-postgresql/)
- [Google Cloud API Gateway](/docs/integrations/google/cloud-api-gateway/)
- [Google Cloud APIs](/docs/integrations/google/cloud-apis/)
- [Google Cloud Armor](/docs/integrations/google/cloud-armor/)
- [Google Cloud Audit](/docs/integrations/google/cloud-audit)
- [Google Cloud Auto Scaler](/docs/integrations/google/cloud-auto-scaler)
- [Google Cloud Backup for GKE](/docs/integrations/google/cloud-backup-for-gke/)
- [Google Cloud BigQuery BI Engine](/docs/integrations/google/cloud-bigquery-bi-engine/)
- [Google Cloud Bigtable](/docs/integrations/google/cloud-bigtable/)
- [Google Cloud Certificate Authority Service](/docs/integrations/google/cloud-certificate-authority-service/)
- [Google Cloud Certificate Manager](/docs/integrations/google/cloud-certificate-manager/)
- [Google Cloud Composer](/docs/integrations/google/cloud-composer/)
- [Google Compute Engine](/docs/integrations/google/compute-engine/)
- [Google Cloud Dataflow](/docs/integrations/google/cloud-dataflow/)
- [Google Cloud Dataproc](/docs/integrations/google/cloud-dataproc/)
- [Google Cloud Dataproc Metastore](/docs/integrations/google/cloud-dataproc-metastore/)
- [Google Cloud Datastore](/docs/integrations/google/cloud-datastore/)
- [Google Cloud Datastream](/docs/integrations/google/cloud-datastream/)
- [Google Cloud Deploy](/docs/integrations/google/cloud-deploy/)
- [Google Cloud Filestore](/docs/integrations/google/cloud-filestore/)
- [Google Cloud Firebase](/docs/integrations/google/cloud-firebase/)
- [Google Cloud Firestore](/docs/integrations/google/cloud-firestore/)
- [Google Cloud Firewall](/docs/integrations/google/cloud-firewall/)
- [Google Cloud Fleet Engine](/docs/integrations/google/cloud-fleet-engine/)
- [Google Cloud Functions](/docs/integrations/google/cloud-functions/)
- [Google Cloud Interconnect](/docs/integrations/google/cloud-interconnect/)
- [Google Cloud Load Balancing](/docs/integrations/google/cloud-load-balancing/)
- [Google Cloud Logging](/docs/integrations/google/cloud-logging/)
- [Google Cloud Memorystore for Redis](/docs/integrations/google/cloud-memorystore-for-redis/)
- [Google Cloud Net App Cloud Volumes Service](/docs/integrations/google/cloud-net-app-cloud-volumes-service/)
- [Google Cloud Network Topology](/docs/integrations/google/cloud-network-topology/)
- [Google Cloud Pub Sub](/docs/integrations/google/cloud-pub-sub/)
- [Google Cloud Router](/docs/integrations/google/cloud-router/)
- [Google Cloud Run](/docs/integrations/google/cloud-run/)
- [Google Cloud Security Command Center](/docs/integrations/google/cloud-security-command-center/)
- [Google Cloud Spanner](/docs/integrations/google/cloud-spanner/)
- [Google Cloud SQL](/docs/integrations/google/cloud-sql/)
- [Google Cloud Storage](/docs/integrations/google/cloud-storage/)
- [Google Cloud Tasks](/docs/integrations/google/cloud-tasks/)
- [Google Cloud TPU](/docs/integrations/google/cloud-tpu/)
- [Google Cloud Trace](/docs/integrations/google/cloud-trace/)
- [Google Cloud Traffic Director](/docs/integrations/google/cloud-traffic-director/)
- [Google Cloud Vertex AI](/docs/integrations/google/cloud-vertex-ai/)
- [Google Cloud VPC](/docs/integrations/google/cloud-vpc/)
- [Google Cloud VPN](/docs/integrations/google/cloud-vpn/)
- [Google Kubernetes Engine (GKE)](/docs/integrations/google/kubernetes-engine/)
Automation integrations:
- [Chronicle](/docs/platform-services/automation-service/app-central/integrations/chronicle/)
- [Google Chat](/docs/platform-services/automation-service/app-central/integrations/google-chat/)
- [Google Safe Browsing](/docs/platform-services/automation-service/app-central/integrations/google-safe-browsing/)
- [Mandiant Advantage Threat intelligence](/docs/platform-services/automation-service/app-central/integrations/mandiant-advantage-threat-intelligence/)
Cloud SIEM integration: [Google](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/45601247-66a5-4c9c-b3af-c422f5b4cbeb.md)
Collectors:
- [Google BigQuery Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/google-bigquery-source/)
- [GCP Metrics Source](/docs/send-data/hosted-collectors/google-source/gcp-metrics-source/)
- [Google Cloud Platform (GCP) Source](/docs/send-data/hosted-collectors/google-source/google-cloud-platform-source/)
- [Mandiant Threat Intel Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/mandiant-threat-intel-source/)
Community app: [Sumo Logic for GCP Balancer Metrics](https://github.com/SumoLogic/sumologic-content/tree/master/GCP/Load_Balancer_Metrics) | diff --git a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md new file mode 100644 index 0000000000..3dba43b301 --- /dev/null +++ b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md @@ -0,0 +1,109 @@ +--- +id: github-copilot-source +title: Github Copilot Source +sidebar_label: Github Copilot +tags: + - cloud-to-cloud + - github-copilot +description: Learn to collect the organization metrics and team metrics from Github Copilot platform. +--- + +import useBaseUrl from '@docusaurus/useBaseUrl'; + +Github-Copilot-icon + +Github is a web-based platform that uses Git for version control and collaboration in software development. It enables developers to create, store, manage, and share code in repositories, track changes, and collaborate on projects with features such as branches, pull requests, and issue tracking. + +Copilot is an AI-powered pair programmer that integrates with various development environments (like Visual Studio Code). It leverages machine learning models trained on publicly available code to provide real-time code suggestions, explanations, and even generate entire functions or tests based on context and natural language prompts. Copilot's features aim to enhance developer productivity, accelerate coding, and improve code quality. + +## Data collected + +| Source | Description | +| :--- | :--- | +| [Organization Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) | Provides aggregated usage data for Copilot features within an organization, including code completions, chat, and pull request summaries. | +| [Team Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-a-team) | Provides feature usage for specific teams, with breakdowns by language, editor, and model. | + +:::note +- The polling interval for both the api endpoints is 24 hours. +::: + +## Setup + +### Vendor configuration + +You will need Organization name and PAT Token to configure the Github Copilot source. +1. **Organization Name**: Name of the organization. The name is not case sensitive. +2. **PAT Token**: Fine-grained PAT(Personal Access Token) token of the account. Follow the steps from [here](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) to generate the fine-grained token. Configure a never-expiring fine-grained token for smooth integration. + +#### Pre-requisites +1. The fine-grained PAT token must have at least one of the following permission sets: + - "Github Copilot Business" organization permissions (read). + - "Administration" organization permissions (read). +2. To access any of the above endpoints, the Copilot Metrics API access policy must be enabled for the organization (or organization containing the team if team metrics is configured). +3. Only organization owners and billing managers of the parent enterprise can view Copilot metrics. + - So the PAT tokens need either (`manage_billing:copilot`, `read:org`), or `read:enterprise` scopes to use the endpoints. Refer [doc](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. + +### Source configuration + +When you create a Github Copilot Source, you add it to a Hosted Collector. Before creating the source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector and Source](/docs/send-data/hosted-collectors/configure-hosted-collector). + +To configure a Github Copilot Source, follow the steps below: +1. [**Classic UI**](/docs/get-started/sumo-logic-ui-classic). In the main Sumo Logic menu, select **Manage Data > Collection > Collection**.
[**New UI**](/docs/get-started/sumo-logic-ui). In the Sumo Logic top menu select **Configuration**, and then under **Data Collection** select **Collection**. You can also click the **Go To...** menu at the top of the screen and select **Collection**. +1. On the Collection page, click **Add Source** next to a Hosted Collector. +1. Search for and select **Github Copilot**. +1. Enter a **Name** for the Source. The description is optional. +1. (Optional) For **Source Category**, enter any string to tag the output collected from the Source. Category metadata is stored in a searchable field called `_sourceCategory`. +1. (Optional) **Fields**. Click the **+Add** button to define the fields you want to associate. Each field needs a name (key) and value. + * ![green check circle.png](/img/reuse/green-check-circle.png) A green circle with a check mark is shown when the field exists in the Fields table schema. + * ![orange exclamation point.png](/img/reuse/orange-exclamation-point.png) An orange triangle with an exclamation point is shown when the field doesn't exist in the Fields table schema. In this case, an option to automatically add the nonexistent fields to the Fields table schema is provided. If a field is sent to Sumo Logic that does not exist in the Fields schema it is ignored, known as dropped. +1. **Organization Name**. Name of the organization. The name is not case sensitive. +1. **PAT Token**. Enter the PAT token generated from the [Github Copilot platform](#vendor-configuration). +1. (Optional) **Collect Team Metric Logs**. Select this checkbox to collect the team metric logs from the Copilot platform. + 1. **Team Names**. Write the team names of which you want to collect metric logs. +1. **Metrics Period(in days)**. Specifies the number of past days for which metrics data should be collect. This is set to 1 by default. You can adjust it based on your needs. +1. When you are finished configuring the Source, click **Save**. + +## JSON schema + +Sources can be configured using UTF-8 encoded JSON files with the Collector Management API. See [Use JSON to Configure Sources](/docs/send-data/use-json-configure-sources) for more details. + +| Parameter | Type | Value | Required | Description | +|:--|:--|:--|:--|:--| +| schemaRef | JSON Object | `{"type":"Github Copilot"}` | Yes | Define the specific schema type. | +| sourceType | String | `"Universal"` | Yes | Type of source. | +| config | JSON Object | [Configuration object](#configuration-object) | Yes | Source type specific values. | + +### Configuration Object + +| Parameter | Type | Required | Default | Description | Example | +|:--|:--|:--|:--|:--|:--| +| name | String | Yes | `null` | Type a desired name of the source. The name must be unique per Collector. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_source`. | `"mySource"` | +| description | String | No | `null` | Type a description of the source. | `"Testing source"` +| category | String | No | `null` | Type a category of the source. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_sourceCategory`. See [best practices](/docs/send-data/best-practices) for details. | `"mySource/test"` +| fields | JSON Object | No | `null` | JSON map of key-value fields (metadata) to apply to the Collector or Source. Use the boolean field _siemForward to enable forwarding to SIEM.|`{"_siemForward": false, "fieldA": "valueA"}` | +| organization | String | Yes | `null` | Name of your organization. | sanlabs | +| patToken | String | Yes | `null` | PAT Token of the account. | pat_gitxxxxx | +| collectTeamMetrics | Boolean | No | `false` | Specify if we need to collect the team metrics logs. | true | +| teamNames | String Array | No | `null` | List of teams of which the metrics should be collected. | dev-team | +| metricPeriodInDays | Integer | Yes | 1 | Specifies the number of past days for which metrics data should be collect. Range 1-28. | 2 | +### JSON example + +```json reference +https://github.com/SumoLogic/sumologic-documentation/blob/main/static/files/c2c/github-copilot/example.json +``` + +### Terraform example + +```sh reference +https://github.com/SumoLogic/sumologic-documentation/blob/main/static/files/c2c/github-copilot/example.tf +``` + +## Limitations + +Due to the behavior of both APIs, data is only available for the previous day, there will be 24 hours latency at any given point in time. Refer [doc](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. + +## FAQ + +:::info +Click [here](/docs/c2c/info) for more information about Cloud-to-Cloud sources. +::: \ No newline at end of file diff --git a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md index 32f4942aac..bc89d2645e 100644 --- a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md +++ b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md @@ -306,6 +306,12 @@ In this section, we'll introduce the following concepts:

Pulls Gmail log data using BigQuery Library APIs.

+
+
+ Thumbnail icon

Github Copilot

+

Learn to collect the organization metrics and team metrics from Github Copilot platform.

+
+
Gmail

Google BigQuery

diff --git a/sidebars.ts b/sidebars.ts index 730a9a2d89..8e7249a4c7 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -468,6 +468,7 @@ module.exports = { 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/druva-source', 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/druva-cyber-resilience-source', 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/duo-source', + 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source', 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/gmail-tracelogs-source', 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/google-bigquery-source', 'send-data/hosted-collectors/cloud-to-cloud-integration-framework/google-workspace-alertcenter', diff --git a/static/files/c2c/github-copilot/example.json b/static/files/c2c/github-copilot/example.json new file mode 100644 index 0000000000..d86cb12350 --- /dev/null +++ b/static/files/c2c/github-copilot/example.json @@ -0,0 +1,18 @@ +{ + "api.version": "v1", + "source": { + "config": { + "name": "Github Copilot", + "organization": "sanlabs", + "patToken": " github_pat_11AYxxxxxxxxxxxxxxxxxxxxxxxxxxxx ", + "collectTeamMetrics": true, + "metricPeriodInDays": 1, + "teamNames": ["dev-team", "cse-team"] + }, + "schemaRef": { + "type": "Github Copilot" + }, + "sourceType": "Universal" + } + } + \ No newline at end of file diff --git a/static/files/c2c/github-copilot/example.tf b/static/files/c2c/github-copilot/example.tf new file mode 100644 index 0000000000..be8bf350eb --- /dev/null +++ b/static/files/c2c/github-copilot/example.tf @@ -0,0 +1,21 @@ +resource "sumologic_cloud_to_cloud_source" "github-copilot-source" { + collector_id = sumologic_collector.collector.id + + schema_ref = { + type = "Github Copilot" + } + + config = jsonencode({ + name = "Github Copilot" + organization = "sanlabs" + patToken = "github_pat_11AYxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + collectTeamMetrics = true + metricPeriodInDays = 1 + teamNames = ["dev-team", "cse-team"] + }) +} + +resource "sumologic_collector" "collector" { + name = "my-collector" + description = "Just testing this" +} \ No newline at end of file From 6cf1d9cf78d13b2cbd282457c7db5deacf6fed65 Mon Sep 17 00:00:00 2001 From: Jagadisha V <129049263+JV0812@users.noreply.github.com> Date: Thu, 7 Aug 2025 16:25:49 +0530 Subject: [PATCH 2/5] Update product-list-a-l.md --- docs/integrations/product-list/product-list-a-l.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/integrations/product-list/product-list-a-l.md b/docs/integrations/product-list/product-list-a-l.md index c5a263eabf..4191317a1d 100644 --- a/docs/integrations/product-list/product-list-a-l.md +++ b/docs/integrations/product-list/product-list-a-l.md @@ -249,7 +249,7 @@ For descriptions of the different types of integrations Sumo Logic offers, see [ | Thumbnail icon | [Genea](https://www.getgenea.com/) | Cloud SIEM integration: [Sequr](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/8eb022d6-fc75-49e7-8308-2fd04d046ea2.md) | | Thumbnail icon | [Genetec](https://www.genetec.com/) | Cloud SIEM integration: [Genetec](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/e71c7bca-0423-4dbe-885e-efed5e058190.md) | | Thumbnail icon | [Gigamon](https://www.gigamon.com/) | Cloud SIEM integration: [Gigamon](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/f575ffed-7b6d-406e-9a55-848b4b6a720f.md)
Partner integrations:
- [Gigamon HAWK](https://github.com/SumoLogic/sumologic-public-partner-apps/tree/master/Gigamon_HAWK)
- [Gigamon ThreatINSIGHT](https://github.com/SumoLogic/sumologic-public-partner-apps/tree/master/Gigamon_ThreatINSIGHT) | -| Thumbnail icon | [GitHub](https://github.com/) | App: [GitHub](/docs/integrations/app-development/github/)
Automation integration: [GitHub](/docs/platform-services/automation-service/app-central/integrations/github/)
Cloud SIEM integration: [Github](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/193c791a-bb10-4742-a429-1256535f888b.md#vendors-github)
Community app: [Sumo Logic for GitHub Actions](https://github.com/SumoLogic/sumologic-content/tree/master/GitHub/GitHub_Actions)
Collector: [Github Copilot](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source) | +| Thumbnail icon | [GitHub](https://github.com/) | App: [GitHub](/docs/integrations/app-development/github/)
Automation integration: [GitHub](/docs/platform-services/automation-service/app-central/integrations/github/)
Cloud SIEM integration: [Github](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/193c791a-bb10-4742-a429-1256535f888b.md#vendors-github)
Collector: [Github Copilot](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source)
Community app: [Sumo Logic for GitHub Actions](https://github.com/SumoLogic/sumologic-content/tree/master/GitHub/GitHub_Actions) | | Thumbnail icon | [GitLab](https://about.gitlab.com/) | App: [GitLab](/docs/integrations/app-development/gitlab/)
Automation integration: [GitLab](/docs/platform-services/automation-service/app-central/integrations/gitlab/) | | Thumbnail icon | [Gmail](https://www.google.com/gmail/about/) | App: [Gmail Trace Logs](/docs/integrations/saas-cloud/gmail-tracelogs)
Automation integrations:
- [Gmail](/docs/platform-services/automation-service/app-central/integrations/gmail/)
- [Gmail Multiple Mailbox](/docs/platform-services/automation-service/app-central/integrations/gmail-multiple-mailbox/)
Collector: [Gmail Trace Logs Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/gmail-tracelogs-source) | | Thumbnail icon | [Google](https://about.google/) | Apps:
- [Google App Engine](/docs/integrations/google/app-engine/)
- [Google BigQuery](/docs/integrations/google/bigquery/)
- [Google Cloud AlloyDB for PostgreSQL](/docs/integrations/google/cloud-alloydb-for-postgresql/)
- [Google Cloud API Gateway](/docs/integrations/google/cloud-api-gateway/)
- [Google Cloud APIs](/docs/integrations/google/cloud-apis/)
- [Google Cloud Armor](/docs/integrations/google/cloud-armor/)
- [Google Cloud Audit](/docs/integrations/google/cloud-audit)
- [Google Cloud Auto Scaler](/docs/integrations/google/cloud-auto-scaler)
- [Google Cloud Backup for GKE](/docs/integrations/google/cloud-backup-for-gke/)
- [Google Cloud BigQuery BI Engine](/docs/integrations/google/cloud-bigquery-bi-engine/)
- [Google Cloud Bigtable](/docs/integrations/google/cloud-bigtable/)
- [Google Cloud Certificate Authority Service](/docs/integrations/google/cloud-certificate-authority-service/)
- [Google Cloud Certificate Manager](/docs/integrations/google/cloud-certificate-manager/)
- [Google Cloud Composer](/docs/integrations/google/cloud-composer/)
- [Google Compute Engine](/docs/integrations/google/compute-engine/)
- [Google Cloud Dataflow](/docs/integrations/google/cloud-dataflow/)
- [Google Cloud Dataproc](/docs/integrations/google/cloud-dataproc/)
- [Google Cloud Dataproc Metastore](/docs/integrations/google/cloud-dataproc-metastore/)
- [Google Cloud Datastore](/docs/integrations/google/cloud-datastore/)
- [Google Cloud Datastream](/docs/integrations/google/cloud-datastream/)
- [Google Cloud Deploy](/docs/integrations/google/cloud-deploy/)
- [Google Cloud Filestore](/docs/integrations/google/cloud-filestore/)
- [Google Cloud Firebase](/docs/integrations/google/cloud-firebase/)
- [Google Cloud Firestore](/docs/integrations/google/cloud-firestore/)
- [Google Cloud Firewall](/docs/integrations/google/cloud-firewall/)
- [Google Cloud Fleet Engine](/docs/integrations/google/cloud-fleet-engine/)
- [Google Cloud Functions](/docs/integrations/google/cloud-functions/)
- [Google Cloud Interconnect](/docs/integrations/google/cloud-interconnect/)
- [Google Cloud Load Balancing](/docs/integrations/google/cloud-load-balancing/)
- [Google Cloud Logging](/docs/integrations/google/cloud-logging/)
- [Google Cloud Memorystore for Redis](/docs/integrations/google/cloud-memorystore-for-redis/)
- [Google Cloud Net App Cloud Volumes Service](/docs/integrations/google/cloud-net-app-cloud-volumes-service/)
- [Google Cloud Network Topology](/docs/integrations/google/cloud-network-topology/)
- [Google Cloud Pub Sub](/docs/integrations/google/cloud-pub-sub/)
- [Google Cloud Router](/docs/integrations/google/cloud-router/)
- [Google Cloud Run](/docs/integrations/google/cloud-run/)
- [Google Cloud Security Command Center](/docs/integrations/google/cloud-security-command-center/)
- [Google Cloud Spanner](/docs/integrations/google/cloud-spanner/)
- [Google Cloud SQL](/docs/integrations/google/cloud-sql/)
- [Google Cloud Storage](/docs/integrations/google/cloud-storage/)
- [Google Cloud Tasks](/docs/integrations/google/cloud-tasks/)
- [Google Cloud TPU](/docs/integrations/google/cloud-tpu/)
- [Google Cloud Trace](/docs/integrations/google/cloud-trace/)
- [Google Cloud Traffic Director](/docs/integrations/google/cloud-traffic-director/)
- [Google Cloud Vertex AI](/docs/integrations/google/cloud-vertex-ai/)
- [Google Cloud VPC](/docs/integrations/google/cloud-vpc/)
- [Google Cloud VPN](/docs/integrations/google/cloud-vpn/)
- [Google Kubernetes Engine (GKE)](/docs/integrations/google/kubernetes-engine/)
Automation integrations:
- [Chronicle](/docs/platform-services/automation-service/app-central/integrations/chronicle/)
- [Google Chat](/docs/platform-services/automation-service/app-central/integrations/google-chat/)
- [Google Safe Browsing](/docs/platform-services/automation-service/app-central/integrations/google-safe-browsing/)
- [Mandiant Advantage Threat intelligence](/docs/platform-services/automation-service/app-central/integrations/mandiant-advantage-threat-intelligence/)
Cloud SIEM integration: [Google](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/45601247-66a5-4c9c-b3af-c422f5b4cbeb.md)
Collectors:
- [Google BigQuery Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/google-bigquery-source/)
- [GCP Metrics Source](/docs/send-data/hosted-collectors/google-source/gcp-metrics-source/)
- [Google Cloud Platform (GCP) Source](/docs/send-data/hosted-collectors/google-source/google-cloud-platform-source/)
- [Mandiant Threat Intel Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/mandiant-threat-intel-source/)
Community app: [Sumo Logic for GCP Balancer Metrics](https://github.com/SumoLogic/sumologic-content/tree/master/GCP/Load_Balancer_Metrics) | From 8e34bfefa142f8adea259c7702a71e41f26a21dd Mon Sep 17 00:00:00 2001 From: Jagadisha V <129049263+JV0812@users.noreply.github.com> Date: Thu, 7 Aug 2025 17:11:54 +0530 Subject: [PATCH 3/5] Update github-copilot-source.md --- .../github-copilot-source.md | 39 +++++++++---------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md index 3dba43b301..350cd7bde5 100644 --- a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md +++ b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md @@ -14,34 +14,32 @@ import useBaseUrl from '@docusaurus/useBaseUrl'; Github is a web-based platform that uses Git for version control and collaboration in software development. It enables developers to create, store, manage, and share code in repositories, track changes, and collaborate on projects with features such as branches, pull requests, and issue tracking. -Copilot is an AI-powered pair programmer that integrates with various development environments (like Visual Studio Code). It leverages machine learning models trained on publicly available code to provide real-time code suggestions, explanations, and even generate entire functions or tests based on context and natural language prompts. Copilot's features aim to enhance developer productivity, accelerate coding, and improve code quality. +Copilot is an AI-powered pair programmer that integrates with various development environments. It leverages machine learning models trained on publicly available code to provide real-time code suggestions, explanations, and even generate entire functions or tests based on context and natural language prompts. Copilot's features aim to enhance developer productivity, accelerate coding, and improve code quality. ## Data collected -| Source | Description | -| :--- | :--- | -| [Organization Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) | Provides aggregated usage data for Copilot features within an organization, including code completions, chat, and pull request summaries. | -| [Team Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-a-team) | Provides feature usage for specific teams, with breakdowns by language, editor, and model. | - -:::note -- The polling interval for both the api endpoints is 24 hours. -::: +| Source | Description | Polling interval | +| :-- | :-- | :-- | +| [Organization Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) | Provides aggregated usage data for Copilot features within an organization, including code completions, chat, and pull request summaries. | 24 hours | +| [Team Metrics](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-a-team) | Provides feature usage for specific teams, with breakdowns by language, editor, and model. | 24 hours | ## Setup ### Vendor configuration -You will need Organization name and PAT Token to configure the Github Copilot source. +You are required to provide the **Organization Name** and **PAT Token** to configure the Github Copilot source. + 1. **Organization Name**: Name of the organization. The name is not case sensitive. -2. **PAT Token**: Fine-grained PAT(Personal Access Token) token of the account. Follow the steps from [here](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) to generate the fine-grained token. Configure a never-expiring fine-grained token for smooth integration. +2. **PAT Token**: Fine-grained PAT(Personal Access Token) token of the account. Follow the steps from the [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) to generate the fine-grained token. Configure a never-expiring fine-grained token for smooth integration. #### Pre-requisites + 1. The fine-grained PAT token must have at least one of the following permission sets: - "Github Copilot Business" organization permissions (read). - "Administration" organization permissions (read). -2. To access any of the above endpoints, the Copilot Metrics API access policy must be enabled for the organization (or organization containing the team if team metrics is configured). +2. To access any of the above endpoints, the Copilot metrics API access policy must be enabled for the organization (or organization containing the team if team metrics is configured). 3. Only organization owners and billing managers of the parent enterprise can view Copilot metrics. - - So the PAT tokens need either (`manage_billing:copilot`, `read:org`), or `read:enterprise` scopes to use the endpoints. Refer [doc](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. + - The PAT tokens need either (`manage_billing:copilot`, `read:org`), or `read:enterprise` scopes to use the endpoints. Refer to the [GitHub Documentation](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. ### Source configuration @@ -60,7 +58,7 @@ To configure a Github Copilot Source, follow the steps below: 1. **PAT Token**. Enter the PAT token generated from the [Github Copilot platform](#vendor-configuration). 1. (Optional) **Collect Team Metric Logs**. Select this checkbox to collect the team metric logs from the Copilot platform. 1. **Team Names**. Write the team names of which you want to collect metric logs. -1. **Metrics Period(in days)**. Specifies the number of past days for which metrics data should be collect. This is set to 1 by default. You can adjust it based on your needs. +1. **Metrics Period(in days)**. Specifies the number of past days for which metrics data should be collect. This is set to 1 day by default. You can adjust it based on your needs. 1. When you are finished configuring the Source, click **Save**. ## JSON schema @@ -78,14 +76,15 @@ Sources can be configured using UTF-8 encoded JSON files with the Collector Mana | Parameter | Type | Required | Default | Description | Example | |:--|:--|:--|:--|:--|:--| | name | String | Yes | `null` | Type a desired name of the source. The name must be unique per Collector. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_source`. | `"mySource"` | -| description | String | No | `null` | Type a description of the source. | `"Testing source"` -| category | String | No | `null` | Type a category of the source. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_sourceCategory`. See [best practices](/docs/send-data/best-practices) for details. | `"mySource/test"` -| fields | JSON Object | No | `null` | JSON map of key-value fields (metadata) to apply to the Collector or Source. Use the boolean field _siemForward to enable forwarding to SIEM.|`{"_siemForward": false, "fieldA": "valueA"}` | -| organization | String | Yes | `null` | Name of your organization. | sanlabs | +| description | String | No | `null` | Type a description of the source. | `"Testing source"` | +| category | String | No | `null` | Type a category of the source. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_sourceCategory`. See [best practices](/docs/send-data/best-practices) for details. | `"mySource/test"` | +| fields | JSON Object | No | `null` | JSON map of key-value fields (metadata) to apply to the Collector or Source. Use the boolean field _siemForward to enable forwarding to SIEM.| `{"_siemForward": false, "fieldA": "valueA"}` | +| organization | String | Yes | `null` | Name of your organization. | sanlabs | | patToken | String | Yes | `null` | PAT Token of the account. | pat_gitxxxxx | | collectTeamMetrics | Boolean | No | `false` | Specify if we need to collect the team metrics logs. | true | | teamNames | String Array | No | `null` | List of teams of which the metrics should be collected. | dev-team | | metricPeriodInDays | Integer | Yes | 1 | Specifies the number of past days for which metrics data should be collect. Range 1-28. | 2 | + ### JSON example ```json reference @@ -100,10 +99,10 @@ https://github.com/SumoLogic/sumologic-documentation/blob/main/static/files/c2c/ ## Limitations -Due to the behavior of both APIs, data is only available for the previous day, there will be 24 hours latency at any given point in time. Refer [doc](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. +Due to the behavior of both APIs, data is only available for the previous day, there will be 24 hours latency at any given point in time. Refer to the [Github Documentation](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. ## FAQ :::info Click [here](/docs/c2c/info) for more information about Cloud-to-Cloud sources. -::: \ No newline at end of file +::: From 420341097a502db3114bc36e75b4fc28fe233847 Mon Sep 17 00:00:00 2001 From: Parth Langalia Date: Thu, 7 Aug 2025 22:24:58 +0530 Subject: [PATCH 4/5] CONN-5027: Addressed comments --- blog-service/2025-08-08-collection.md | 4 ++-- .../github-copilot-source.md | 21 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/blog-service/2025-08-08-collection.md b/blog-service/2025-08-08-collection.md index 11a9fe31f9..fb097f4f77 100644 --- a/blog-service/2025-08-08-collection.md +++ b/blog-service/2025-08-08-collection.md @@ -1,5 +1,5 @@ --- -title: Github Copilot Source (Collection) +title: GitHub Copilot Source (Collection) image: https://help.sumologic.com/img/sumo-square.png keywords: - c2c @@ -9,4 +9,4 @@ hide_table_of_contents: true import useBaseUrl from '@docusaurus/useBaseUrl'; -We're excited to announce the release of our new cloud-to-cloud source for Github Copilot. This source aims to collect the organization and team metrics logs from the Copilot platform and send them to Sumo Logic for streamlined analysis. [Learn more](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source). \ No newline at end of file +We're excited to announce the release of our new cloud-to-cloud source for GitHub Copilot. This source aims to collect the organization and team metrics logs from the Copilot platform and send them to Sumo Logic for streamlined analysis. [Learn more](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source). \ No newline at end of file diff --git a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md index 350cd7bde5..07c4753575 100644 --- a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md +++ b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/github-copilot-source.md @@ -1,18 +1,19 @@ --- id: github-copilot-source -title: Github Copilot Source -sidebar_label: Github Copilot +title: GitHub Copilot Source +sidebar_label: GitHub Copilot tags: - cloud-to-cloud - github-copilot -description: Learn to collect the organization metrics and team metrics from Github Copilot platform. + - github +description: Learn to collect the organization metrics and team metrics from GitHub Copilot platform. --- import useBaseUrl from '@docusaurus/useBaseUrl'; Github-Copilot-icon -Github is a web-based platform that uses Git for version control and collaboration in software development. It enables developers to create, store, manage, and share code in repositories, track changes, and collaborate on projects with features such as branches, pull requests, and issue tracking. +GitHub is a web-based platform that uses Git for version control and collaboration in software development. It enables developers to create, store, manage, and share code in repositories, track changes, and collaborate on projects with features such as branches, pull requests, and issue tracking. Copilot is an AI-powered pair programmer that integrates with various development environments. It leverages machine learning models trained on publicly available code to provide real-time code suggestions, explanations, and even generate entire functions or tests based on context and natural language prompts. Copilot's features aim to enhance developer productivity, accelerate coding, and improve code quality. @@ -27,10 +28,10 @@ Copilot is an AI-powered pair programmer that integrates with various developmen ### Vendor configuration -You are required to provide the **Organization Name** and **PAT Token** to configure the Github Copilot source. +You are required to provide the **Organization Name** and **PAT Token** to configure the GitHub Copilot source. 1. **Organization Name**: Name of the organization. The name is not case sensitive. -2. **PAT Token**: Fine-grained PAT(Personal Access Token) token of the account. Follow the steps from the [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) to generate the fine-grained token. Configure a never-expiring fine-grained token for smooth integration. +2. **PAT Token**: Fine-grained PAT (Personal Access Token) token of the account. Follow the steps from the [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) to generate the fine-grained token. Configure a never-expiring fine-grained token for smooth integration. #### Pre-requisites @@ -43,9 +44,9 @@ You are required to provide the **Organization Name** and **PAT Token** to confi ### Source configuration -When you create a Github Copilot Source, you add it to a Hosted Collector. Before creating the source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector and Source](/docs/send-data/hosted-collectors/configure-hosted-collector). +When you create a GitHub Copilot Source, you add it to a Hosted Collector. Before creating the source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector and Source](/docs/send-data/hosted-collectors/configure-hosted-collector). -To configure a Github Copilot Source, follow the steps below: +To configure a GitHub Copilot Source, follow the steps below: 1. [**Classic UI**](/docs/get-started/sumo-logic-ui-classic). In the main Sumo Logic menu, select **Manage Data > Collection > Collection**.
[**New UI**](/docs/get-started/sumo-logic-ui). In the Sumo Logic top menu select **Configuration**, and then under **Data Collection** select **Collection**. You can also click the **Go To...** menu at the top of the screen and select **Collection**. 1. On the Collection page, click **Add Source** next to a Hosted Collector. 1. Search for and select **Github Copilot**. @@ -55,7 +56,7 @@ To configure a Github Copilot Source, follow the steps below: * ![green check circle.png](/img/reuse/green-check-circle.png) A green circle with a check mark is shown when the field exists in the Fields table schema. * ![orange exclamation point.png](/img/reuse/orange-exclamation-point.png) An orange triangle with an exclamation point is shown when the field doesn't exist in the Fields table schema. In this case, an option to automatically add the nonexistent fields to the Fields table schema is provided. If a field is sent to Sumo Logic that does not exist in the Fields schema it is ignored, known as dropped. 1. **Organization Name**. Name of the organization. The name is not case sensitive. -1. **PAT Token**. Enter the PAT token generated from the [Github Copilot platform](#vendor-configuration). +1. **PAT Token**. Enter the PAT token generated from the [GitHub Copilot platform](#vendor-configuration). 1. (Optional) **Collect Team Metric Logs**. Select this checkbox to collect the team metric logs from the Copilot platform. 1. **Team Names**. Write the team names of which you want to collect metric logs. 1. **Metrics Period(in days)**. Specifies the number of past days for which metrics data should be collect. This is set to 1 day by default. You can adjust it based on your needs. @@ -99,7 +100,7 @@ https://github.com/SumoLogic/sumologic-documentation/blob/main/static/files/c2c/ ## Limitations -Due to the behavior of both APIs, data is only available for the previous day, there will be 24 hours latency at any given point in time. Refer to the [Github Documentation](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. +Due to the behavior of both APIs, data is only available for the previous day, there will be 24 hours latency at any given point in time. Refer to the [GitHub Documentation](https://docs.github.com/en/rest/copilot/copilot-metrics?apiVersion=2022-11-28#get-copilot-metrics-for-an-organization) for further details. ## FAQ From 602decc44e72542e64bf8a7f786cee4e8d0d3e93 Mon Sep 17 00:00:00 2001 From: Parth Langalia Date: Thu, 7 Aug 2025 22:28:11 +0530 Subject: [PATCH 5/5] CONN-5027: Addressed comment --- .../cloud-to-cloud-integration-framework/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md index bc89d2645e..5e41a916f1 100644 --- a/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md +++ b/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/index.md @@ -309,7 +309,7 @@ In this section, we'll introduce the following concepts:
Thumbnail icon

Github Copilot

-

Learn to collect the organization metrics and team metrics from Github Copilot platform.

+

Learn to collect the organization metrics and team metrics from GitHub Copilot platform.