Creación de un rastreador de eventos de interacción de elementos - Amazon Personalize

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de un rastreador de eventos de interacción de elementos

Antes de poder registrar eventos de interacción de elementos, debe crear un rastreador de eventos de este tipo. Un rastreador de eventos dirige los datos de eventos nuevos al conjunto de datos de interacciones de elementos de su grupo de conjuntos de datos.

Puede crear un rastreador de eventos con la consola Amazon Personalize o con la CreateEventTracker API operación. Se pasa como parámetro el nombre del recurso de Amazon (ARN) del grupo de conjuntos de datos que contiene el conjunto de datos de interacciones entre elementos de destino. Para obtener instrucciones sobre cómo crear un rastreador de eventos con la consola de Amazon Personalize, consulte Creación de un rastreador de eventos (consola).

Un rastreador de eventos incluye un identificador de seguimiento, que se transfiere como parámetro cuando se utiliza la PutEventsoperación. A continuación, Amazon Personalize anexa los datos del nuevo evento al conjunto de datos de interacciones de elementos del grupo de conjuntos de datos que especifique en el rastreador de eventos.

nota

Solo puede crear un rastreador de eventos de interacciones de elementos para un grupo de conjuntos de datos.

Python
import boto3 personalize = boto3.client('personalize') response = personalize.create_event_tracker( name='MovieClickTracker', datasetGroupArn='arn:aws:personalize:us-west-2:acct-id:dataset-group/MovieClickGroup' ) print(response['eventTrackerArn']) print(response['trackingId'])

El rastreador de eventos ARN y el ID de seguimiento muestran, por ejemplo:

{ "eventTrackerArn": "arn:aws:personalize:us-west-2:acct-id:event-tracker/MovieClickTracker", "trackingId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }
AWS CLI
aws personalize create-event-tracker \ --name MovieClickTracker \ --dataset-group-arn arn:aws:personalize:us-west-2:acct-id:dataset-group/MovieClickGroup

El rastreador de eventos ARN y el ID de seguimiento muestran, por ejemplo:

{ "eventTrackerArn": "arn:aws:personalize:us-west-2:acct-id:event-tracker/MovieClickTracker", "trackingId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }
SDK for JavaScript v3
// Get service clients module and commands using ES6 syntax. import { CreateEventTrackerCommand } from "@aws-sdk/client-personalize"; import { personalizeClient } from "./libs/personalizeClients.js"; // Or, create the client here. // const personalizeClient = new PersonalizeClient({ region: "REGION"}); // Set the event tracker's parameters. export const createEventTrackerParam = { datasetGroupArn: 'DATASET_GROUP_ARN', /* required */ name: 'NAME', /* required */ } export const run = async () => { try { const response = await personalizeClient.send(new CreateEventTrackerCommand(createEventTrackerParam)); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();
SDK for Java 2.x
public static String createEventTracker(PersonalizeClient personalizeClient, String eventTrackerName, String datasetGroupArn) { String eventTrackerId = null; String eventTrackerArn = null; long maxTime = 3 * 60 * 60; long waitInMilliseconds = 30 * 1000; String status; try { CreateEventTrackerRequest createEventTrackerRequest = CreateEventTrackerRequest.builder() .name(eventTrackerName) .datasetGroupArn(datasetGroupArn) .build(); CreateEventTrackerResponse createEventTrackerResponse = personalizeClient.createEventTracker(createEventTrackerRequest); eventTrackerArn = createEventTrackerResponse.eventTrackerArn(); eventTrackerId = createEventTrackerResponse.trackingId(); System.out.println("Event tracker ARN: " + eventTrackerArn); System.out.println("Event tracker ID: " + eventTrackerId); maxTime = Instant.now().getEpochSecond() + maxTime; DescribeEventTrackerRequest describeRequest = DescribeEventTrackerRequest.builder() .eventTrackerArn(eventTrackerArn) .build(); while (Instant.now().getEpochSecond() < maxTime) { status = personalizeClient.describeEventTracker(describeRequest).eventTracker().status(); System.out.println("EventTracker status: " + status); if (status.equals("ACTIVE") || status.equals("CREATE FAILED")) { break; } try { Thread.sleep(waitInMilliseconds); } catch (InterruptedException e) { System.out.println(e.getMessage()); } } return eventTrackerId; } catch (PersonalizeException e){ System.out.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return eventTrackerId; }