It is possible in ExtentReport with Customized format:
Sample Example:
As according to your data provider is getting details, you can add it in Extent Report:
@Test(dataProvider = "getTestData", )
public void createAccount(String caseNo, String targetGroupName, String expectedResult)
{
extentTest= extentReport.createTest("Test");
String testResult = "Case No: " + caseNo + " <br /> Group Name: " + targetGroupName;
extentTest.info(MarkupHelper.createLabel(testResult, ExtentColor.BLUE));
System.out.println(testResult);
}
And this is how its looks like:

So like wise you can add customized String as according to preference.
Add Failure Details or Error Stack Trace in Reports:
To add Test Failure description in Report, After every test method, Annotation @AfterMethod is call on which ITestResult through the result of test, if test got fail it can retrieve error stack information.
@AfterMethod
public void testStatus(ITestResult result) throws Exception {
if (result.getStatus() == ITestResult.FAILURE) {
testResult = "Test Fail :" + result.getName();
extentTest.fail(MarkupHelper.createLabel(testResult, failColor));
System.out.println(testResult);
testResult = "Details of Fail Testcase:" + result.getThrowable();
extentTest.info(testResult);
extentReport.flush();
}
}